由于项目需要,在Android上实现TextView部分文本监听单击事件效果如下:
网上找了一些资料,我自己加工一下,生成了一个工具类,使用非常方便,代码如下:
TextViewUtil.getInstance().setPartOnClickListener(mTvTest, 3, 8,new PartOnClickListener() {
@Override
public void partOnClick(View v) {
Toast.makeText(mContext, "我被点击了", Toast.LENGTH_SHORT).show();
}
});
工具类中的核心代码:
public void setPartOnClickListener(TextView textView, int start, int end,
PartOnClickListener partOnClickListener) {
this.partOnClickListener = partOnClickListener;
this.start = start;
this.end = end;
this.textView = textView;
strs = textView.getText().toString();
style = new SpannableStringBuilder(strs);
style.setSpan(new ClickSpannable(partOnClickListener), start, end,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setMovementMethod(LinkMovementMethod.getInstance());
textView.setText(style);
源码下载:
http://download.csdn.net/detail/y280903468/9551063