編輯:關於Android編程
本文實例講述了Android使用TextView實現無下劃線超鏈接的方法。分享給大家供大家參考,具體如下:
Android系統默認把網址、電話、地圖(geo地址)、郵箱等轉換為超鏈接。
具體請查看 android:TextView簡單設置文本樣式和超鏈接的方法
和HTML中的一樣,默認超鏈接都帶下劃線的,下面的方案可以在TextView中去掉超鏈接的下劃線:
1、重寫ClickableSpan類來去掉下劃線樣式(系統默認使用ClickableSpan來封裝超鏈接)
//無下劃線超鏈接,使用textColorLink、textColorHighlight分別修改超鏈接前景色和按下時的顏色 private class NoLineClickSpan extends ClickableSpan { String text; public NoLineClickSpan(String text) { super(); this.text = text; } @Override public void updateDrawState(TextPaint ds) { ds.setColor(ds.linkColor); ds.setUnderlineText(false); //去掉下劃線 } @Override public void onClick(View widget) { processHyperLinkClick(text); //點擊超鏈接時調用 } }
2、把超鏈接文本封裝為NoLineClickSpan對象,並添加到TextView中
TextView tv = findViewById(R.id.tv_click); SpannableString spStr = new SpannableString("本站-->http://www.jb51.net"); ClickSpan clickSpan = new NoLineClickSpan(vo); //設置超鏈接 spStr.setSpan(clickSpan, 0, str.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE); tv.append(spStr); tv.setMovementMethod(LinkMovementMethod.getInstance());
PS:不用把TextView的屬性autoLink設為”all”.
3、設置超鏈接為可點擊狀態
tv.setMovementMethod(LinkMovementMethod.getInstance());
PS:在NoLineClickSpan類中實現onClick()回調方法.
更多關於Android相關內容感興趣的讀者可查看本站專題:《Android開發入門與進階教程》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android基本組件用法總結》、《Android視圖View技巧總結》、《Android布局layout技巧總結》及《Android控件用法總結》
希望本文所述對大家Android程序設計有所幫助。
UI的畫圖流程中,先不管怎麼填充要畫的數據的,只是來看一下需要畫到屏幕上的數據是通過怎樣的流程最終傳遞到屏幕上的。這個流程都是UI獲取並創建Surface並利用Cavan
Android在4.0版本之後同時按電源鍵和音量鍵可以截取當前屏幕,截圖後會有一個過渡動畫效果,這裡提取了將效果這部分提取出來,可以用於應用截圖分享功能。 截圖功能在源碼
在使用App的時候,首次登錄都需要用戶輸入密碼的,有些朋友為了安全起見密碼設置的比較長,導致很多次密碼都輸入錯誤,嚴重影響了用戶體驗效果。這一點移動開發者做好了准備工作,
0x00本文參考Android WebView 遠程代碼執行漏洞簡析。代碼地址為,https://github.com/jltxgcy/AppVulnerability/