本期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开发那点破事》

更多推荐

【Android开发那点破事】实现打电话功能