上次我们做了一个简单的hello world,这次我们来写一个电话拨打系统,其实这个电话拨打并不是真正的自己的程序拨打的电话,而是调用的系统程序而实现的电话拨打。
首先我们建立项目Phone,在项目的aluesàstrings下创建所需要的字符串
<string name="app_name">Phone</string>
<string name="input_info">请输入号码</string>
<string name="dial_caotion">拨打</string>
然后在layoutàmain.xml下创建界面
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/input_info" />
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/phone_number"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/dial_btn"
android:text="@string/dial_caotion"
/>
这个程序一共用到了一个输入框,一个按钮,那个文本就不再说了。剩下的就是我们的java代码了。
我们需要在srcàPhoneActvity写实现代码,首先我们应该先获取用户在输入框里输入的电话号,然后再写一个监听内部类,用来监听按钮事件,具体实现代码就是下面这样
numberEt = (EditText) this.findViewById(R.id.phone_number);
dialBtn = (Button) this.findViewById(R.id.dial_btn);
dialBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//调用系统的拨号服务实现电话的拨打功能
String phone_number = numberEt.getText().toString();
phone_number = phone_number.trim();
if(phone_number !=null&&!phone_number.equals("")){
//封装一个打电话的intent,并且将电话号码包装成一个Uri对象传入
Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:" +phone_number));
PhoneActivity.this.startActivity(intent);
}
}
});