Android 文本视图中字符串的每个单词上都有多个onclicklistener

Android 文本视图中字符串的每个单词上都有多个onclicklistener,android,textview,Android,Textview,我想在文本视图中添加多个可点击链接!获取每个单击文本的响应 这可能会有所帮助,这解释了如何在Rss提要应用程序中创建标签 private void makeTagLinks(最终字符串文本,最终文本视图电视){ if(text==null | | tv==null){ 返回; } 最终跨距跨距ss=新跨距跨距跨距(文本); 最终列表项=Arrays.asList(text.split(“\\s*,\\s”)) int start=0,结束; 用于(最终字符串项:项){ end=start+it

我想在文本视图中添加多个可点击链接!获取每个单击文本的响应


这可能会有所帮助,这解释了如何在Rss提要应用程序中创建标签

private void makeTagLinks(最终字符串文本,最终文本视图电视){
if(text==null | | tv==null){
返回;
}
最终跨距跨距ss=新跨距跨距跨距(文本);
最终列表项=Arrays.asList(text.split(“\\s*,\\s”))
int start=0,结束;
用于(最终字符串项:项){
end=start+item.length();
如果(开始<结束){
ss.setSpan(新MyClickableSpan(项目),开始,结束,0);
}
start+=item.length()+2;//原始文本中的逗号和空格;)
}
setMovementMethod(LinkMovementMethod.getInstance());
tv.setText(ss,TextView.BufferType.SPANNABLE);
}
TextView textView= (TextView)view.findViewById(R.id.textViewAboutUs);

SpannableString ss = new SpannableString("Your String");

ClickableSpan clickableSpan = new ClickableSpan() {
    @Override
    public void onClick(View textView) {
        //Do whatever

    }
};

ss.setSpan(clickableSpan, starting_position, end_position, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //spanned string, for multiple string define multiple ss.setSpan

textView.setText(ss);
textView.setMovementMethod(LinkMovementMethod.getInstance());
private void makeTagLinks(final String text, final TextView tv) {
        if (text == null || tv == null) {
            return;
        }
        final SpannableString ss = new SpannableString(text);
        final List items = Arrays.asList(text.split("\\s*,\\s"))
        int start = 0, end;
        for (final String item : items) {
            end = start + item.length();
            if (start < end) {
                ss.setSpan(new MyClickableSpan(item), start, end, 0);
            }
            start += item.length() + 2;//comma and space in the original text ;)
        }
        tv.setMovementMethod(LinkMovementMethod.getInstance());
        tv.setText(ss, TextView.BufferType.SPANNABLE);
    }