Pew*_*abs 50 android hyperlink textview
我知道如果你在textview中放一个链接它会起作用,但如果我想显示例如:
谷歌stackoverflow
而不是整个链接(只是标签)我如何使这些链接可点击?
And*_*rei 60
您可以有两个单独的TextView,如果需要,您可以在布局中相应地对齐它们:
    Text1.setText(
        Html.fromHtml(
            "<a href=\"http://www.google.com\">google</a> "));
    Text1.setMovementMethod(LinkMovementMethod.getInstance());
    Text2.setText(
            Html.fromHtml(
                "<a href=\"http://www.stackoverflow.com\">stackoverflow</a> "));
    Text2.setMovementMethod(LinkMovementMethod.getInstance());
然后,如果你想剥离"链接下划线".创建一个类:
public class URLSpanNoUnderline extends URLSpan {
    public URLSpanNoUnderline(String url) {
        super(url);
    }
    @Override public void updateDrawState(TextPaint ds) {
        super.updateDrawState(ds);
        ds.setUnderlineText(false);
        }
}
然后在主Activity类中添加此方法,其中包含TextView
private void stripUnderlines(TextView textView) {
    Spannable s = new SpannableString(textView.getText());
    URLSpan[] spans = s.getSpans(0, s.length(), URLSpan.class);
    for (URLSpan span: spans) {
        int start = s.getSpanStart(span);
        int end = s.getSpanEnd(span);
        s.removeSpan(span);
        span = new URLSpanNoUnderline(span.getURL());
        s.setSpan(span, start, end, 0);
    }
    textView.setText(s);
}
然后在初始化TextViews之后(在你的onCreate中)调用它:
stripUnderlines(Text1);
stripUnderlines(Text2);
小智 52
TextView t2 = (TextView) findViewById(R.id.textviewidname);
t2.setMovementMethod(LinkMovementMethod.getInstance());
和
<string name="google_stackoverflow"><a href="https://stackoverflow.com/questions/9852184/android-textview-hyperlink?rq=1">google stack overflow</a></string>
链接是" Android:textview超链接 "
标签是"google stack overflow"
定义java中的第一个代码块和strings.xml文件中的第二个代码块.另外,请务必在java中的页面布局中引用textView的id.
Hul*_*ulk 14
这很简单的方法---
在你的活动中 -
 TextView tv = (TextView) findViewById(R.id.site);
 tv.setText(Html.fromHtml("<a href=http://www.stackoverflow.com> STACK OVERFLOW "));
 tv.setMovementMethod(LinkMovementMethod.getInstance());
然后你将得到标签,而不是整个链接..
希望它能帮到你......
这应该工作.
TextView t2 = (TextView) findViewById(R.id.text2);
t2.setMovementMethod(LinkMovementMethod.getInstance());
and
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/txtCredits"
android:id="@+id/text2"
 android:layout_centerInParent="true"
android:layout_marginTop="20dp"></TextView>
| 归档时间: | 
 | 
| 查看次数: | 97500 次 | 
| 最近记录: |