是否可以将 onclick 添加到 TextView 的某些部分?例如我的代码是这样的,
String content = "Hello this a test.. For more details contact @Peter";
someTextView.setText(content);
我想为“@Peter”添加一个 onClick 事件。这可能吗?
TIA。
最佳答案
简单:-)
SpannableString link = makeLinkSpan("@Peter", new View.OnClickListener() {
@Override
public void onClick(View v) {
// Peforme Click
}
});
String content = "Hello this a test.. For more details contact";
someTextView.setText(content);
someTextView.append(link);
makeLinkSpan()
方法是
private SpannableString makeLinkSpan(CharSequence text, View.OnClickListener listener) {
SpannableString link = new SpannableString(text);
link.setSpan(new ClickableString(listener), 0, text.length(),
SpannableString.SPAN_INCLUSIVE_EXCLUSIVE);
return link;
}
ClickableString
类
private static class ClickableString extends ClickableSpan {
private View.OnClickListener mListener;
public ClickableString(View.OnClickListener listener) {
mListener = listener;
}
@Override
public void onClick(View v) {
mListener.onClick(v);
}
}
关于android - TextView - OnClick - Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14135273/