【发布时间】:2014-07-26 17:57:22
【问题描述】:
我是 android 新手,并且:
我有一个可以显示电话号码的 TextView。
我想让文本的那部分是“可触摸的”并尝试拨打电话或类似的东西。
我尝试在用户单击 TextView 时实现implicit intent,但我无法使其工作。
有什么解决办法吗?还是另一种方法?
谢谢。
【问题讨论】:
-
使用
android:autoLink="phone"
我是 android 新手,并且:
我有一个可以显示电话号码的 TextView。
我想让文本的那部分是“可触摸的”并尝试拨打电话或类似的东西。
我尝试在用户单击 TextView 时实现implicit intent,但我无法使其工作。
有什么解决办法吗?还是另一种方法?
谢谢。
【问题讨论】:
android:autoLink="phone"
首先通过在您的 layout.xml 中添加以下内容来制作您的 TextView clickable
<TextView
...
...
android:clickable="true">
</TextView>
在你的 Java 代码中,在特定 TextView 的 OnClickListener 中启动电话活动为
TextView tv=(TextView) findViewById(R.id.tv_contact);
tv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("tel://"+ tv.getText().toString().trim())));
}
});'
如果你想链接 textview 上的特定文本,那么这篇文章可能会对你有所帮助
Android textview with clickable phone number
编辑
正如@Apoorv 所建议的,您也可以使用android:autoLink = "phone" 作为
在 xml 文件中,添加以下行。
<TextView
....
android:autoLink = "phone"
/>
欲了解更多信息,请参阅android:autoLink - Have a Clickable Phone Number link in a TextView, in XML
【讨论】:
你应该使用内置的链接。阅读本教程,通俗易懂:http://android.okhelp.cz/linkify-text-link-url-in-textview-text-android-example/
【讨论】: