轉自 http://m.blog.csdn.net/blog/lpforever/42971241 html
我想實現用一個TextView中間某一小段文字作成超連接,點擊後能調用系統默認瀏覽器,跳轉到指定網頁這麼一個功能。本身先折騰了一下沒搞定,又在網上看了不少資料,不少都說在代碼中用什麼Spanned、Html.fromHtml()之類的來設置TextView,搞得還挺複雜,而後在佈局裏給Textview裏添加 android:autoLink="web"、android:linksClickable="true"什麼什麼的,但各類方法我都試了,不知道爲何,竟然全都是Shit!點擊後仍是沒任何反應。java
最後無奈還得上StackOverflow查了一下,結果找到正解了!並且居然實現起來比絕大多數人說的方法都簡單得多!廢話很少說,我立刻把實現方法貼在下面:android
1)首先在strings.xml文件中直接寫上TextView要顯示的超連接文字,以下,超連接用html標籤的寫法來就好了web
<string name="signup_agreeTerms">我贊成<a href="http://www.baidu.com/">用戶協議</a>中的全部內容</string>
2)而後你得在佈局中擁有一個這樣的TextView,注意,不要再添加什麼autoLink、linksClickable屬性之類的
<TextView android:id="@+id/signup_txt_agreeTerms" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/signup_agreeTerms"/>
3)在你的Activity中,添加以下代碼
TextView textview = (TextView) findViewById(R.id.signup_txt_agreeTerms); textview.setMovementMethod(LinkMovementMethod.getInstance()); //其實就這一句是關鍵
這樣就OK了,實在是太簡單了……
附上參考的StackOverflow地址:How do I make links in a TextView clickable?瀏覽器