Linkify在我的网址中添加了%20,并没有打开确切的网址

时间:2014-04-29 05:24:40

标签: android linkify

我正在使用android的linkify功能打开一个网站,并在从我的设备打开时在我的网址中获取%20,这样我该怎么办?

这就是我正在做的事情

license=(TextView)findViewById(R.id.find_us_tv3);

    license.setTextSize(18);
    Pattern pattern=Pattern.compile("p"+"[page stackoverflow]+stackoverflow");

    license.setText(" Open the demo page stackoverflow.");
    license.setLinksClickable(true);
    Linkify.addLinks(license, pattern, "http://stackoverflow.com/questions/ask"); 

2 个答案:

答案 0 :(得分:2)

你的代码中的“http:/” “ Linkify.addLinks(许可证,模式,”http:/ https://stackoverflow.com/questions/ask“)
 两次没有帮助。

只需使用:

Pattern pattern = Pattern.compile("www.stackoverflow.com/questions/ask");
Linkify.addLinks(license, pattern, "http://");  

您在pattern中提及的文字应该是您在TextView

中设置的文字的一部分

参考:linkify blog link

答案 1 :(得分:1)

试试这个:

TextView tvWeblink = ((TextView) findViewById(R.id.textView));
        tvWeblink.setTypeface(LandingScreen.font);

        tvWeblink.setClickable(true);
        tvWeblink.setMovementMethod(LinkMovementMethod.getInstance());
        String text = "By pressing this It will open stack overflow page <a href=\"http://stackoverflow.com/questions/ask/\"> ask a question. </a>.";
        tvWeblink.setText(Html.fromHtml(text));