Blogger Scott

          TextView中打開超文本鏈接

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

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

              其中mask的參數表在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 江天部落格 閱讀(3726) 評論(0)  編輯  收藏 所屬分類: Android

          主站蜘蛛池模板: 莒南县| 纳雍县| 顺平县| 眉山市| 天门市| 扬中市| 公主岭市| 夏河县| 竹山县| 德格县| 南汇区| 平原县| 沂水县| 江北区| 罗江县| 江安县| 恩平市| 广水市| 遂昌县| 义乌市| 顺平县| 峨山| 五峰| 千阳县| 石首市| 汪清县| 抚宁县| 贵港市| 年辖:市辖区| 尤溪县| 乌恰县| 本溪| 龙州县| 屏边| 阳新县| 平凉市| 海丰县| 措美县| 霍城县| 手游| 河津市|