为Android Textview中的链接启用点击操作

时间:2013-12-13 10:38:06

标签: android textview

我需要为Textview中的链接启用点击操作,然后在应用窗口中打开网页。 Linkify将在浏览器中打开。但我想在我的应用程序中打开webview。请帮帮我。

2 个答案:

答案 0 :(得分:1)

blog post讨论扩展ClickableSpan。

首先扩展ClickableSpan类:

static class InternalURLSpan extends ClickableSpan {
    OnClickListener mListener;

    public InternalURLSpan(OnClickListener listener) {
        mListener = listener;
    }

    @Override
    public void onClick(View widget) {
        mListener.onClick(widget);
    }
}

博客讨论了可点击链接在您的活动中执行的操作。您可以轻松地调整此方法以在WebView中打开URL。

它基本上看起来像这样:

SpannableString ss = new SpannableString("....")
ss.setSpan(new InternalURLSpan(new OnClickListener() {
        public void onClick(View v) {
            // Your code to open the link in a WebView here.
        }
    }), x, y, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

您只需将SpannableString对象设置为TextView的文本:

textView.setText(ss);

答案 1 :(得分:0)

您可以通过string.xml文件

为textview加下划线
<string name="hello_world"><u>Hello world!<u></string>

现在,您可以在textView上设置onClickListener,并可以将用户重定向到您的webView Activity,而不是浏览器应用。