TextView tips = (TextView) findViewById(R.id.text); String str = "单击打开 <a href='http://www.baidu.com/'>百度首页</a>"; tips.setText(Html.fromHtml(str)); <span style="white-space:pre"> </span>tips.setMovementMethod(LinkMovementMethod.getInstance());
布局实现
<TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" />
关键代码 tips.setText(Html.fromHtml(str));
tips.setMovementMethod(LinkMovementMethod.getInstance());
第二种实现方式
<span style="white-space:pre"> </span>String str = "xxxx 查看详情"; ClickableSpan span = new ClickableSpan() { @Override public void updateDrawState(TextPaint ds) { super.updateDrawState(ds); ds.setColor(Color.parseColor("#ff33b5e5"));//设置超链接的颜色 ds.setUnderlineText(true); } @Override public void onClick(View widget) { // 单击事件处理 } }; SpannableString ss = new SpannableString(str); ss.setSpan(span, str.length() - 4, str.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); tips.setText(ss); tips.setMovementMethod(LinkMovementMethod.getInstance());
注意tips.setMovementMethod(LinkMovementMethod.getInstance());必须设置