我正努力让我的链接在Android应用程序中可点击。我尝试过以下方法:
<ScrollView
<RelativeLayout
<TextView
...
android:id="@+id/textView"
android:text="@string/stringName"
android:linksClickable="true"
android:autoLink="web"
使用
<string name="stringName"><a href="http://www.example.com">String</a></string>
或
<string name="stringName"><a href="http://www.example.com">String</a></string>
同时也纳入
((TextView) findViewById(R.id.textView)).setMovementMethod(LinkMovementMethod.getInstance());
((TextView) findViewById(R.id.textView)).setText(Html.fromHtml(getResources().getString(R.string.stringName)));
在我的.java
中编辑:我可以使用我的string.xml文件中的前一个方法使我的字符串显示为可点击,但是,当我点击它时没有任何反应。我相信这是因为我点击了relativeLayout,甚至更可能是ScrollView而不是TextView
答案 0 :(得分:0)
这对我有用:
TextView text1 = (TextView)findViewById(R.id.textView);
Spanned spanned = Html.fromHtml(getString(R.string.stringName));
text1.setMovementMethod(LinkMovementMethod.getInstance());
text1.setText(spanned);
我的strings.xml,最后更改为>
>
<string name="stringName"><a href="http://www.example.com">>String</a></string>
答案 1 :(得分:0)
我不太确定在scrollView中嵌入TextView使其无法点击,但您始终可以在代码中单击TextView。 你在TextView上设置一个OnClickListener,并在里面启动一个新的Intent:
首先给ScrollView充气并在代码中获取textView,如下所示:
ScrollView layout = (ScrollView) ScrollView.inflate(this, R.layout.campaign_info_layout, null);
TextView textView = (TextView) layout.findViewById(R.id.textView);
然后像这样设置OnClickListener;
textView.setOnClickListener(new OnClickListener (){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.example.com"));
startActivity(i);
}
});
答案 2 :(得分:0)
这项工作对我来说:
<string name="stringName"><a href="http://www.example.com">String</a></string>
TextView TextView=(TextView)findViewById(R.id.textView);
TextView.setMovementMethod(LinkMovementMethod.getInstance());
在Xml文件中:
Remove this two lines from TextView
android:linksClickable="true"
android:autoLink="web"