在android中将文本设为超链接

时间:2014-03-12 07:25:04

标签: android hyperlink textview

我想制作动态创建的textView作为超链接 我尝试过很多东西,但都失败了 有什么建议吗?

for(int i=0;i<tags.size();i++){
        TextView txt= new TextView(this);
        txt.setText(tags.get(i).getName()+" ");
        txt.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
        final String url = tags.get(i).getValue();
        if(url.length() > 0){
            txt.setClickable(true);
            txt.setLinksClickable(true);
            txt.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    startActivity(new Intent(Intent.ACTION_VIEW,Uri.parse(url)));
                }
            });
        }
        ((ViewGroup) view).addView(txt);
    }

3 个答案:

答案 0 :(得分:1)

试试这个:

TextView txtLink = (TextView) findViewById(R.id.txtLink);
String html = "<a href=\"http://google.com\">Open Google</a>";
txtLink.setText(Html.fromHtml(html));
txtLink.setMovementMethod(LinkMovementMethod.getInstance());

答案 1 :(得分:1)

我希望我能得到你的权利。 你想要文字看起来像hipper链接。 使用此代码

TextView text = new TextView(context);         text.setText(&#34; Your Text&#34;);

    SpannableStringBuilder ssb = new SpannableStringBuilder();
    ssb.append(text.getText());
    ssb.setSpan(new URLSpan("#"), 0, ssb.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    text.setText(ssb, TextView.BufferType.SPANNABLE);

答案 2 :(得分:0)