国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android中實現為TextView添加多個可點擊的文本

2020-04-11 11:44:06
字體:
來源:轉載
供稿:網友

本文實例展示了Android中實現為TextView添加多個可點擊的文本的方法。該功能在Android社交軟件的制作中非常具有實用價值。分享給大家供大家參考。具體如下:

很多時候我們在使用社交軟件的過程中多多少少會為別人的帖子點贊,如下圖所示:

可以看到用戶頁面顯示出來的只是點了贊的用戶的名稱,點擊這些名稱可以進入到該用戶的主頁。下面我們就來實現類似的效果。

具體代碼如下:

@Override protected void onCreate(Bundle savedInstanceState) {     super.onCreate(savedInstanceState);     setContentView(R.layout.activity_main);   TextView mTextView = (TextView) rootView.findViewById(R.id.like_tv);    // 構造多個超鏈接的html, 通過選中的位置來獲取用戶名   StringBuilder sbBuilder = new StringBuilder();   for (int i = 0; i < 10; i++) {     sbBuilder.append("username-" + i + "、");   }   String likeUsers = sbBuilder.substring(0, sbBuilder.lastIndexOf("、")).toString();   mTextView.setMovementMethod(LinkMovementMethod.getInstance());   mTextView.setText(addClickablePart(likeUsers), BufferType.SPANNABLE); } /** * @param str * @return */ private SpannableStringBuilder addClickablePart(String str) {   // 第一個贊圖標   ImageSpan span = new ImageSpan(getActivity(), R.drawable.umeng_comm_like);   SpannableString spanStr = new SpannableString("p.");   spanStr.setSpan(span, 0, 1, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);      SpannableStringBuilder ssb = new SpannableStringBuilder(spanStr);   ssb.append(str) ;   String[] likeUsers = str.split("、");   if (likeUsers.length > 0) {     // 最后一個     for (int i = 0; i < likeUsers.length; i++) {   final String name = likeUsers[i];   final int start = str.indexOf(name) + spanStr.length();   ssb.setSpan(new ClickableSpan() {     @Override     public void onClick(View widget) {    Toast.makeText(getView().getContext(), name,    Toast.LENGTH_SHORT).show();     }     @Override     public void updateDrawState(TextPaint ds) {    super.updateDrawState(ds);    // ds.setColor(Color.RED); // 設置文本顏色    // 去掉下劃線    ds.setUnderlineText(false);     }   }, start, start + name.length(), 0);     }   }   return ssb.append("等"   + likeUsers.length + "個人贊了您."); } // end of addClickablePart 

運行效果如下圖所示:

希望本文所述對大家的Android程序設計有所幫助

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 九江县| 双桥区| 和平县| 汝州市| 娄烦县| 苍山县| 临漳县| 乐业县| 广昌县| 方正县| 唐海县| 个旧市| 蒙山县| 博白县| 丰宁| 鄄城县| 澜沧| 新宾| 邵阳市| 齐河县| 嘉义市| 牟定县| 浏阳市| 潮安县| 临海市| 兴国县| 淮北市| 万载县| 芦山县| 松溪县| 柳林县| 金阳县| 奉化市| 伊吾县| 赣州市| 资阳市| 万州区| 衡阳县| 普陀区| 北安市| 眉山市|