Android入门——电话拨号器和四种点击事件
相对于HelloWorld来说,电话拨号器也是Android的一个入门demo,从这个样例我们要理清楚做安卓项目的思路。
大体分为三步:
1.理解需求,理清思路
2.设计UI
3.代码实现
电话拨号器
1. 理解需求:
*一个文本框——用来接收电话号码
*一个button——用来触发事件
2. 设计UI
3. 代码实现
public class MainActivity extends Activity {
private EditText et_number; //定义变量用来接收电话号码
private Button btn; //定义button
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置界面内容
setContentView(R.layout.activity_main);
//查找控件,文本输入框
et_number= (EditText) findViewById(R.id.et_number);
//找到按钮控件
btn=(Button) findViewById(R.id.btn);
//设置点击事件监听
btn.setOnClickListener(new MyListener());
}
//内部类方式实现点击事件
class MyListener implements OnClickListener{
@Override
public void onClick(View v) {
//运行拨号操作
//1.获取用户输入的号码
String number=et_number.getText().toString();
//2.运行拨号操作
//创建一个拨号意图
Intent intent=new Intent();
//设置要拨打的号码 (URL:统一资源定位符,uri:统一资源标识符)
intent.setData(Uri.parse("tel://"+number));
//设置动作,拨号动作
intent.setAction(intent.ACTION_CALL);
//跳转到拨号界面
startActivity(intent);
}
}
}
代码写完以后。从配置文件里加入一下打电话权限CALL_PHONE就OK了。
上面的电话拨号器用了一种实现点击事件的方式。也是要介绍的第一种点击事件的方法:
四种点击事件实现方式
1.内部类方式
(见上面电话拨号demo,只是多介绍)
2.创建匿名内部类方式
/**
* 匿名内部类方式实现点击事件
* @author Hugh
*/
public class MainActivity extends Activity { private EditText et_number;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置界面内容
setContentView(R.layout.activity_main);
//查找控件,文本输入框
et_number= (EditText) findViewById(R.id.et_number);
//找到button控件
btn=(Button) findViewById(R.id.btn);
//设置点击事件监听
btn.setOnClickListener(new OnClickListener() { @Override
public void onClick(View v) {
//运行拨号操作
//1.获取用户输入的号码
String number=et_number.getText().toString();
//2.运行拨号操作
//意图
Intent intent=new Intent();
//设置要拨打的号码
intent.setData(Uri.parse("tel://"+number));
//设置动作,拨号 动作
intent.setAction(intent.ACTION_CALL);
//跳转到拨号界面
startActivity(intent);
}
});
}
}
3.实现OnClickListener接口的当前类对象
/**
* 实现OnClickListener接口的当前类对象
* @author Hugh
*/
public class MainActivity extends Activity implements OnClickListener { private EditText et_number;
private Button btn; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置界面内容
setContentView(R.layout.activity_main);
// 查找控件,文本输入框
et_number = (EditText) findViewById(R.id.et_number);
// 找到button控件
btn = (Button) findViewById(R.id.btn);
// 设置点击事件监听
btn.setOnClickListener(this);
} @Override
public void onClick(View v) {
// 运行拨号操作
// 1.获取用户输入的号码
String number = et_number.getText().toString();
// 2.运行拨号操作
// 意图
Intent intent = new Intent();
// 设置要拨打的号码
intent.setData(Uri.parse("tel://" + number));
// 设置动作,拨号 动作
intent.setAction(intent.ACTION_CALL);
// 跳转到拨号界面
startActivity(intent);
}
}
4.在布局文件里给button加入一个单击事件的响应方法,然后在代码中实现这种方法
/短信群发器/res/layout/activity_main.xml 下定义xml中的属性android:onClick="call"
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/et_number"
android:layout_below="@+id/et_number"
android:onClick="call"
android:text="按下拨号" />
在代码中实现这种方法
public class MainActivity extends Activity {
private EditText et_number;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置界面内容
setContentView(R.layout.activity_main);
// 查找控件,文本输入框
et_number = (EditText) findViewById(R.id.et_number);
}
public void call(View view){;
// 运行拨号操作
// 1.获取用户输入的号码
String number = et_number.getText().toString();
// 2.运行拨号操作
// 意图
Intent intent = new Intent();
// 设置要拨打的号码
intent.setData(Uri.parse("tel://" + number));
// 设置动作,拨号 动作
intent.setAction(intent.ACTION_CALL);
// 跳转到拨号界面
startActivity(intent);
}
}
对于Android的学习,须要不断的积累。砸实基础。
这篇博客算是个開始吧,我要把博客又一次拾起来,加油!
Android入门——电话拨号器和四种点击事件的更多相关文章
- Android入门——电话拨号器和4种点击事件
关于HelloWorld为,电话拨号程序还AndroidA入门demo,从这个样例我们要理清楚做安卓项目的思路. 大体分为三步: 1.理解需求,理清思路 2.设计UI 3.代码实现 电话拨号器 1. ...
- Android按钮的四种点击事件
本文记录一下按钮的四种点击事件 第一种 public class MainActivity extends Activity { @Override protected void onCreate(B ...
- Android中Button四种点击事件实现方式
1.Xml添加监听属性,这里添加的doClick. <Button android:id="@+id/bt1" android:layout_width="wrap ...
- android之电话拨号器
在android入门的案例中,除了HelloWorld这个经典案例,还有一个电话拨号器需要掌握,现在我就来个电话拨号器的示范,毕竟大牛也是从菜鸟进化而来的. 首先你应该知道自己要设置怎样的UI,然后创 ...
- Android实战--电话拨号器
今天跟着黑马视频建立一个android app--电话拨号器 首先新建一个android项目 activity_main_xml中的代码如下: <RelativeLayout xmlns:and ...
- Android四种点击事件和五中存储方式
Android点击事件的四种实现方式 1.内部类实现onClickListenter接口 bt_login.setOnClickListener(new MyListener()); class My ...
- Android Button四种点击事件和长按事件
项目XML代码 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andr ...
- Android项目——电话拨号器
因为应用要使用手机的电话服务,所以要在清单文件AndroidManifest.xml中添加电话服务权限: <?xml version="1.0" encoding=" ...
- Android Button的四种点击事件
bta1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.m ...
随机推荐
- JDK 1.6 下载 地址
JDK1.6官方下载_JDK6官方下载地址: http://www.java.net/download/jdk6/6u10/promoted/b32/binaries/jdk-6u10-rc2-bin ...
- 说说Python 中的文件操作 和 目录操作
我们知道,文件名.目录名和链接名都是用一个字符串作为其标识符的,但是给我们一个标识符,我们该如何确定它所指的到底是常规文件文件名.目录名还是链接名呢?这时,我们可以使用os.path模块提供的isfi ...
- DouNet学习_收发邮件
一.收发邮件 --->第一步:发邮件首先要有发送者的邮箱地址和登录的密码才能发送 这些都写在APP里 不要写死 --->第二步:发邮件就要有网络,要添加net.Mail命名空间 要发送的 ...
- 星星字体 ps教程
本教程主要使用Photoshop制作绚丽星空装饰的艺术字教程,这个教程很简单,只需要一些简单技巧,即可做出海报.书籍杂志的封面效果.其中的字体.笔刷和背景均可以更换 教程所需要的素材链接:http:/ ...
- MVC用户登录方法(lamda表达式)
public bool ValidateUser(account model) { using (assertEntities db = new assertEntities()) { acc ...
- [转]对Android开发者有益的40条优化建议
下面是开始Android编程的好方法: 找一些与你想做事情类似的代码 调整它,尝试让它做你像做的事情 经历问题 使用StackOverflow解决问题 对每个你像添加的特征重复上述过程.这种方法能够激 ...
- select多个字段赋值给多个变量
在存储过程中定义了变量v1 int;v2 int;v3 int;从表tab1选择3个字段f1,f2,f3赋值给这三个变量,要如何写 如果单个变量可以 select f1 into v1 from t ...
- Ubuntu 上安装R
1. 编辑 /etc/apt/sources.listsudo cp /etc/apt/sources.list /etc/apt/sources.list.backupsudo gedit sour ...
- Camera拍照声设定
在某些国家(比如Japan),为了防止偷拍,强制拍照声是需要从Speaker出来的(即使插入耳机的情况下). 实现该功能比较简单的方法就是将拍照声类型设置为Ringtone 或 Alarm 或 Not ...
- python异常以及面向对象编程
一.面向对象 需要注意的是,在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的,不是private变量,所以,不能用__na ...