Androidx学习笔记(3)-- 电话拨号器编写
2016-01-18 18:20
351 查看
功能:用户输入一个号码,点击拨打按钮,启动系统打电话的应用把号码拨打出去
一个拨打电话功能其实是有两个应用构成的:
一个是拨号应用 system/app/Dialer.apk
一个是打电话应用 system/app/Phone.apk
我们此时需要编写的就是拨号器,对于如何打电话,我们现在不去处理,直接调用系统的即可
注意:
组件必须设置宽高,否则不能通过编译
如果要在java代码中操作某个组件,则组件需要设置id,这样才能在代码中通过id拿到这个组件
一个拨打电话功能其实是有两个应用构成的:
一个是拨号应用 system/app/Dialer.apk
一个是打电话应用 system/app/Phone.apk
我们此时需要编写的就是拨号器,对于如何打电话,我们现在不去处理,直接调用系统的即可
1. 定义布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="请输入电话号码" /> <EditText android:id="@+id/et_dialer" android:layout_width="match_parent" android:layout_height="wrap_content" android:textStyle="" /> <Button android:id="@+id/btn_dialer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="拨打电话" /> </LinearLayout>
注意:
组件必须设置宽高,否则不能通过编译
android:layout_width="wrap_content" android:layout_height="wrap_content"
如果要在java代码中操作某个组件,则组件需要设置id,这样才能在代码中通过id拿到这个组件
android:id="@+id/et_phone"
2. 给按钮设置点击侦听 并把号码打出去
public class MainActivity extends Activity { private Button btnDialer = null; private EditText etDialer = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //给按钮设置监听 //1. 获取按钮对象 btnDialer = (Button)findViewById(R.id.btn_dialer); //2 设置监听 btnDialer.setOnClickListener(new MyDialerListener()); } //创建一个Button按钮的监听 class MyDialerListener implements OnClickListener { // 点击按钮的时候会调用此方法 @Override public void onClick(View v) { // 获取输入的号码 etDialer = (EditText) findViewById(R.id.et_dialer); String phone = etDialer.getText().toString(); // 创建打电话的意图 Intent intent = new Intent(); // 把打电话的动作封装到意图对象中 intent.setAction(Intent.ACTION_CALL); // 把打给谁的号码作为数据封装到意图对象中 intent.setData(Uri.parse("tel:"+phone)); // 把动作告诉系统 startActivity(intent); } } }
3.在清单文件(AndroidManifest.xml)中添加权限
<uses-permission android:name="android.permission.CALL_PHONE"/>
相关文章推荐
- 【开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位网友补充完善
- Android Studio 混淆 相关
- Android新增一个音频类型及双音频输出的实现
- Android 动画相关笔记
- Android快速开发系列 10个常用工具类
- 解决Android Studio 无法检查更新问题
- Android Tab实现之ViewPager+FragmentActivity
- Android 如何支持平板和手机
- Android 风格与主题(style and theme)
- android bitmap图片下载三级缓存
- 常用的android弹出对话框 几乎包含了所有(1)
- Android中achartengine与ScrollView的冲突问题解决
- Android活动(Activity)状态与生命周期总结
- Android模拟器对应的电脑快捷键说明
- Android ScrollView嵌套ListView嵌套GridView的上下拉以及加载更多
- 类似美团的多条件筛选弹出框简单实现
- 2.6 Android 代码的严格检查
- 解释 Android 调用系统相机,在onActivityResult中接收的data为null的原因
- Android Native一处反调试
- Uri.parse()调用