首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >隐藏SpannableString地址

隐藏SpannableString地址
EN

Stack Overflow用户
提问于 2013-08-04 14:45:55
回答 2查看 126关注 0票数 1

我有一个网页地址,我想要显示的只是一个字,当点击打开网页浏览器从我的警报对话框。除了现在显示完整的网址外,一切都很好。我不知道怎么藏起来。这是我的java文件中的代码。

代码语言:javascript
复制
Tv = ((TextView) view.findViewById(R.id.textviewH));
    SpannableString s = new SpannableString("www.Google.com");
    Linkify.addLinks(s, Linkify.WEB_URLS);
    if (Tv != null) 
    {
        Tv.setText(s);
        Tv.setMovementMethod(LinkMovementMethod.getInstance());

    }

我试过用www.google.com替换

代码语言:javascript
复制
<ahref="www.google.com">Google</a>

但这甚至不编译。SpannableString必须有某种类型的输入参数配置,它允许这样做。有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-04 15:25:47

您可以手动设置url跨度:

代码语言:javascript
复制
SpannableString s = new SpannableString("Link to Google");
s.setSpan(new URLSpan("http://www.google.com"), 0, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

或者从html创建它:

代码语言:javascript
复制
Spanned s = Html.fromHtml("<a href=\"http://www.google.com\">Google</a>");
票数 0
EN

Stack Overflow用户

发布于 2013-08-04 16:51:54

你可以轻松地做到这一点。这是我的例子。

我在你的问题中编辑了这个解决方案。

代码语言:javascript
复制
Tv = ((TextView) view.findViewById(R.id.textviewH));
SpannableString s = new SpannableString("Google");

if (Tv != null) 
{
    Tv.setText(s);
text.setSpan(new URLSpan("http://www.google.com/"),0, 5, 0);

Tv.setMovementMethod(LinkMovementMethod.getInstance());
Tv.setText(text, BufferType.SPANNABLE);
}

我希望你能对这个答案感到高兴.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18044166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档