TextView 设置部分文字颜色及点击事件SpannableString
设置TextView中一部分文字的颜色及点击事件。
SpannableString gotoMsgListStr = new SpannableString("消息列表"); gotoMsgListStr.setSpan(new ClickableSpan() { @Override public void onClick(View widget) { startActivity(new Intent(OrderPayStatusActivity.this, MsgListActivity.class)); finish(); } @Override public void updateDrawState(TextPaint ds) { super.updateDrawState(ds); ds.setColor(getResources().getColor(R.color.text_color_gules)); //设置颜色 } }, 0, gotoMsgListStr.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); ... tvPayDesc.append(gotoMsgListStr); tvPayDesc.setMovementMethod(LinkMovementMethod.getInstance()); //很重要,点击无效就是由于没有设置这个引起