Blogger Scott

          TextView中打開超文本鏈接

              TextView為一個顯示純文本的視圖,但如果純文本中有http超文本鏈接或者Email地址,如何讓android自動識別并調(diào)用相關(guān)的activity(如瀏覽器、電子郵件)來展示呢?
              查了網(wǎng)上很多資料,實現(xiàn)方法都相對復(fù)雜,基本是使用android.text.Html,android.text.style.URLSpan等幾個類來實現(xiàn)識別TextView中的URL,再通過webview的loadUrl(myUrl)方法來打開。
              這里有個麻煩的地方,即TextView中的鏈接地址必須是符合HTML規(guī)范的,即必須要有<a href="http://.....">.....</a>標記才能被識別,如果沒有還得分析文本再加上這些標記,相當麻煩。其實要讓TextView自動識別其中的超文本鏈接或是Email地址或是電話號碼,Android有個很簡單的方法,即TextView的setAutoLinkMask(int mask)方法:

          1TextView tv = new TextView(this);
          2tv.setAutoLinkMask(0x01);

              其中mask的參數(shù)表在android文檔中有說明,具體如下:
          Constant Value Description
          none 0x00 Match no patterns (default)
          web 0x01 Match Web URLs
          email 0x02 Match email addresses
          phone 0x04 Match phone numbers
          map 0x08 Match map addresses
          all 0x0f Match all patterns (equivalent to web|email|phone|map)

          posted on 2011-05-11 01:13 江天部落格 閱讀(3720) 評論(0)  編輯  收藏 所屬分類: Android

          主站蜘蛛池模板: 文水县| 香格里拉县| 贵阳市| 民权县| 嵊泗县| 定结县| 高邮市| 西充县| 景宁| 宜兴市| 东宁县| 巴彦县| 竹山县| 禄劝| 洛浦县| 锡林郭勒盟| 洪湖市| 二连浩特市| 慈利县| 仙游县| 玛纳斯县| 韩城市| 邹平县| 承德市| 金沙县| 南昌市| 卓尼县| 玉环县| 盐山县| 邓州市| 育儿| 伊川县| 蒲江县| 吴桥县| 上饶市| 宁陵县| 大足县| 济源市| 安仁县| 广丰县| 玉环县|