本期Android开发那点破事来聊聊如何调用系统提供的打电话功能,毕竟拨打电话才是手机最重要的功能。
首先来看一个界面:
这里有一个TextView,上面显示着电话号码。我们要实现点击这个电话号码就让手机自动拨打这上面的号码。
我已经做好了,先看下效果吧,点击电话号码,出现:
可以看到我们已经拨打了这个号码了。
下面跟着我的节奏,看代码如何实现:
首先你需要在AndroidManifest.xml中加上打电话的权限:
<!-- 添加拨出电话的权限 -->
<uses-permission android:name="android.permission.CALL_PHONE" />
接着在你的Activity中获取到这个组件:
this.merchantPhone = (TextView) info.findViewById(R.id.merchantPhone);
获取到这个组件,设置组件可以点击,以及点击事件,这里的事件就是进入到打电话的Intent,看代码:
this.merchantPhone.setClickable(true);
this.merchantPhone.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// 取得输入的电话号码串
String phoneNO = MerchantDetailActivity.this.merchantPhone
.getText().toString();
// 如果输入不为空创建打电话的Intent
if (StringUtils.isNotNull(phoneNO)) {
Intent phoneIntent = new Intent(
"android.intent.action.CALL", Uri.parse("tel:"
+ phoneNO));
startActivity(phoneIntent);
}
else {
Toast.makeText(MerchantDetailActivity.this, "此商家还未添加联系方式", Toast.LENGTH_LONG).show();
}
}
});
结束!是不是很简单,说了,其实就是那么点破事。。。
更多Android开发的破事,请看专栏:《Android开发那点破事》