1

我有一个listView,而listView 的每个项目都有textView。我已将 android:autoLink="web|email" 设置为 listView 的每个项目的 textView 和 onTouch 侦听器。当我触摸 textView 时,不会调用 onTouch。

我想要的是,当文本视图中存在链接时,只有该链接必须是可点击的。文本视图的其余部分我想进入那个 onTouch。如果链接不存在,我想在整个 listView 项目中获取 onTouch。有什么办法吗?...请帮忙。

4

1 回答 1

1
String styledText = getResources().getString(R.string.Email);
    SpannableString span = new SpannableString(styledText);

    span.setSpan(new StyleSpan(Typeface.ITALIC),
            styledText.indexOf("Terms"), styledText.length(), 0);
    span.setSpan(new UnderlineSpan(), styledText.indexOf("Terms"),
            styledText.length(), 0);

    ClickableSpan clickSpan = new ClickableSpan() {

        @Override
        public void onClick(View widget) {
            // TODO Auto-generated method stub
            showInfoDialog();
        }
    };
    span.setSpan(clickSpan, styledText.indexOf("Terms"),
            styledText.length(), 0);
    span.setSpan(
            new ForegroundColorSpan(getResources().getColor(R.color.link_)),
            styledText.indexOf("Terms"), styledText.length(), 0);
    txt_accept.setText(span, BufferType.SPANNABLE);

将此代码用作参考并使用您的逻辑..无法向您解释整个过程..如果您需要任何帮助,请发表评论。

于 2011-11-21T07:54:12.667 回答