今日开发了一个简单的安卓拨号软件。

  步骤如下: 1.先构建用户界面

       2.写java代码获取控件

       3.进行逻辑的控制

       4.添加权限

  1.构建用户界面

  2.点进R.java文件会发现系统已经自动生成索引,通过调用完成

  3.写java代码

 package com.example.dailer;

 import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast; public class MainActivity extends Activity {
private EditText ed1; // Activity代表了一个用户的界面,一个activity对应一个android界面
// activity可以创建一个窗口在这个窗口上加载用户的界面 用来跟用户进行交互
// 当activity创建的时候就会调用onCreate()方法,在其中做初始化的操作
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 首先调用setContentView方法加载页面
setContentView(R.layout.activity_main);
// 找到要操作的控件对应的java对象 findViewById()的返回值是view对象 为android所有控件的父类
Button btn1 = findViewById(R.id.button1);
ed1 = findViewById(R.id.editText1);
// 给按钮添加点击事件
btn1.setOnClickListener(new MyOnClickListener()); } public class MyOnClickListener implements android.view.View.OnClickListener {
// 当点击这个控件的时候调用这个onclick方法
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// 1.获取用户输入的电话号码
String text = ed1.getText().toString();
// 2.判断用户输入是否为空 为空:提示输入电话号码 ;非空:打电话
if (TextUtils.isEmpty(text)) {
// Toast.makeText(?,?,?):向页面输出一个短暂的提示
// 第一个参数 上下文context,MainActivity就是一个上下文,可以传入当前activity对象
// 第二个参数 要显示的提示信息
// 第三个参数 显示提示的时间长短有两个选择 Toast.LENGTH_SHORT(时间短) Toast.LENGTH_LONG(时间长)
Toast.makeText(MainActivity.this, "请输入电话号码", Toast.LENGTH_SHORT).show();
} else {
// intent意图就是对要进行的操作的抽象描述
Intent intent = new Intent();
// 给意图设置操作
intent.setAction(Intent.ACTION_CALL);
Uri data = Uri.parse("tel:"+text);
// 给意图设置携带的数据
intent.setData(data);
// 开启打电话的activity(界面)
startActivity(intent);
}
} } public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
} public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
} }

MainActivity.java

界面展示:

输入为空时:

输入之后点击拨打号码:

完成,但是优缺点这个手机不能打美国的紧急电话例如911等电话号码

最新文章

  1. Java实现画八卦
  2. 利用YaHoo YUI实现Javascript CSS 压缩 分类: C# 2014-07-13 19:07 371人阅读 评论(0) 收藏
  3. ipad或iPhone 访问https网站不成功
  4. MyBatis 用户表记录数查询
  5. Nested List Weight Sum I & II
  6. linux 常用命令;
  7. 对drupal的理解【转】
  8. ida GDB 远程调试
  9. python练习程序(c100经典例14)
  10. CODEVS 2451 互不侵犯
  11. ArrayList和LinkedList和Vector源码分析
  12. 最近总当机,IT帮网站用了1天时间成功搬家
  13. VMware的安装和使用
  14. JVM启动参数
  15. 提交代码,SVN被锁定,提示:svn is already locked解决方案
  16. layui 弹窗的iframe 父子界面相互传值
  17. 上传--spring-boot
  18. TCP 三次握手原理,你真的理解吗?
  19. 【转载】固态硬盘的S.M.A.R.T详解
  20. 喵哈哈村的魔法考试 Round #21 (Div.2) 题解

热门文章

  1. js对象无法当成参数传递 解决方法
  2. routes 学习
  3. python join 和setDaemon 简介
  4. 课堂测试用javaweb写一个注册界面,并将数据保存到后台数据库(部分完成)
  5. Cookie存储在哪里
  6. 如何使用Docker部署PHP开发环境
  7. ie brower 点击用默认浏览器打开链接
  8. Golang编程的工程管理
  9. CentOS 7安装/卸载Redis,配置service服务管理
  10. springboot官网->application.properties文件