我定义了以下TextView:
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/txtCredits"
android:autoLink="web" android:id="@+id/infoTxtCredits"
android:layout_centerInParent="true"
android:linksClickable="true"></TextView>
Run Code Online (Sandbox Code Playgroud)
where @string/txtCredits包含的字符串资源<a href="some site">Link text</a>.
Android正在突出显示TextView中的链接,但它们不响应点击.有人能告诉我我做错了什么吗?我是否必须在我的活动中为TextView设置onClickListener,这对于这么简单?
看起来它与我定义字符串资源的方式有关.这不起作用:
<string name="txtCredits"><a href="http://www.google.com">Google</a></string>
Run Code Online (Sandbox Code Playgroud)
但这样做:
<string name="txtCredits">www.google.com</string>
Run Code Online (Sandbox Code Playgroud)
这是一个无赖,因为我宁愿显示文本链接而不是显示完整的URL.
我正在设计一个应用程序,其中有TextView,并根据一些检查条件,我想在Java端点击TextView中的链接/电话号码.我可以这样做,我不想让它在默认情况下可点击,这是通过在xml文件中设置完成的
android:autoLink="all"
Run Code Online (Sandbox Code Playgroud)
我已经尝试过:创建常规TextView,不要设置autoLink ="all",
TextView myView =
(TextView)view.findViewById(R.id.thisIstheTextView);
myView .setLinksClickable(true);
Run Code Online (Sandbox Code Playgroud)
还尝试过:
myView .setMovementMethod(LinkMovementMethod.getInstance());
Run Code Online (Sandbox Code Playgroud)
以上Java代码都不起作用,我不想要预先设计的xml TextView启用autoLink,我想根据if()条件更改Java代码中的TextView行为.我的代码没有错误,但我无法实现我想要的.你能分享一下你的知识吗?谢谢.