在很多的软件的当中,尤其是像淘宝、美团这些在线支付平台,有的时候,我们需要和商家或者客服联系的时候,点击界面上的电话便可以直接进行拨打电话了,而同样的效果实现,谷歌也自带有这个功能,只需要在布局文件中添加一行代码即可
android:autoLink = "phone"
效果展示图虽然这样也能实现我们所需要的功能,但是由于这个功能所实现的是一个超链接的功能,所以在TextView中电话号码下面也会显示一条下划线,而这条下划线的存在,也使得界面有点不伦不类的,但是想要去掉这个下划线,则需要修改源文件当中的代码,所以,除了像网页链接之类的功能,跳转个人并不建议使用这个功能,只需要知道这个功能的存在即可
根据android:autoLink = "phone"所实现的功能,我们知道在谷歌官方的设置当中,我们是需要点击手机号码直接跳转到拨打电话的界面,同时也需要传递电话号码,所以我们可以对于这个电话号码所在的TextView设置一个点击事件即可
<!-- 拨打电话的权限,这里必须要添加权限,否则当点击电话号码的时候程序会崩溃 -->
<uses-permission android:name="android.permission.CALL_PHONE"/>
String phoneNumber = "13812342345";
binding.phone.setText(phoneNumber);
binding.phone.setOnClickListener(v -> {
Intent myCallIntent = new Intent(Intent.ACTION_DIAL,
Uri.parse("tel" + phoneNumber));
startActivity(myCallIntent);
});
调试结果展示图
这样便是很直接的实现了点击电话号码跳转到拨打电话的界面并且传递电话号码,只有当用户自己点击拨打按钮的时候,才会真正的拨出电话
网友评论