Android实现电话拨号器和短信发送器
Android实现电话拨号器和短信发送器
电话拨号器
实现原理:用户输入电话号码,当点击拨打的时候,由监听对象捕获,监听对象通过文本控件获取到用户输入的电话号码,由于系统已经实现了电话拨号功能,所以我们只需要调用这个功能就可以了。
步骤:
1.界面布局
2.编写Activity
3.使用意图过滤器激活电话拨号功能
4.添加电话服务权限(用手机的电话服务,要在清单文件AndroidManifest.xml中添加电话服务权限)
如图所示这三个控件是垂直摆放的,所以要使用线性布局来搁置显示控件
效果图:
界面布局:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <!--提示信息-->
- <TextView
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/Mobile"
- />
- <!--文本框按钮-->
- <EditText
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:id="@+id/moblie"
- />
- <!--拨号按钮 -->
- <Button
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/button"
- android:id="@+id/button"
- />
- </LinearLayout>
Activity:
- package cn.test.phone;
- import android.app.Activity;
- import android.content.Intent;
- import android.net.Uri;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- public class MainActivity extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- //根据控件的id查找到按钮控件
- Button button =(Button)this.findViewById(R.id.button);
- button.setOnClickListener(new ButtonClickLister()); //点击事件的处理对象
- }
- //监听对象实现拨打功能
- private class ButtonClickLister implements View.OnClickListener{
- public void onClick(View v){
- EditText mobileText=(EditText)findViewById(R.id.moblie);
- String moblie=mobileText.getText().toString(); //获取到用户输入的时间
- Intent intent =new Intent();
- intent.setAction("android.intent.action.CALL");
- intent.setData(Uri.parse("tel:"+moblie));
- //根据意图过滤器参数激活电话拨号功能
- startActivity(intent);
- }
- }
- }
添加电话服务权限:
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="cn.itcast.action"
- android:versionCode="1"
- android:versionName="1.0">
- 略....
- <uses-sdk android:minSdkVersion=“6" />
- <!-- 电话服务权限 -->
- <uses-permission android:name="android.permission.CALL_PHONE"/>
- </manifest>
|
评论暂时关闭