先看效果图:
实现代码,很简单的:
使用:
如果要修改点击效果颜色,参考:http://www.itstrike.cn/Question/2d355020-8e84-45ed-8d29-81da2a2ee43a.html

实现代码,很简单的:
- private SpannableString getClickableSpan(String text) {
- View.OnClickListener l = new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Log.i("jerome","click");
- }
- };
- SpannableString spanableInfo = new SpannableString(text);
- int start = spanableInfo.length() - 4;
- int end = spanableInfo.length();
- spanableInfo.setSpan(new Clickable(l), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
- return spanableInfo;
- }
- class Clickable extends ClickableSpan {
- private final View.OnClickListener mListener;
- public Clickable(View.OnClickListener l) {
- mListener = l;
- }
- @Override
- public void updateDrawState(TextPaint ds) {
- ds.setColor(Color.RED);//文本颜色
- ds.setUnderlineText(false);//是否有下划线
- ds.bgColor = Color.WHITE;//背景颜色
- }
- @Override
- public void onClick(View v) {
- if (null != mListener) {
- mListener.onClick(v);
- }
- }
- }
使用:
- mTextView.setText(getClickableSpan("数据获取失败,点击重新加载"));
- mTextView.setMovementMethod(LinkMovementMethod.getInstance());
如果要修改点击效果颜色,参考:http://www.itstrike.cn/Question/2d355020-8e84-45ed-8d29-81da2a2ee43a.html