安卓电话拨号器

安卓电话拨号器

学习安卓的简单的程序

这个界面主要由相对布局组成。

最上面的是“请输入手机号”是一个TextView,它的宽和高都分别设置填充父控件,和与内容相同,图片和关键代码如下

接下来即是一个编辑框,因为采用的是相对布局,所以需要用到这两句

android:layout_alignLeft="@id/text"

android:layout_below="@id/text"

这两句的意思是与id为text的TextView,左边对齐,并且置于它的下方

最后一个控件就是一个按钮,也即是Button,这里的所用到的属性跟上面类似,就不过多解释了

这个程序核心部分就是为按钮添加的监听事件怎么写了首先打开MainActivity.java

在它的onCreate方法编写代码,如下图,

大致解释代码内容吧,在onCreate方法里

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Button button=(Button)this.findViewById(R.id.button);

button.setOnClickListener(new buttonlistener());

这段代码的前两行自动生成,用来导入布局文件,我们来看第三行,第三行创建了一个Button的变量,然后根据id找到布局文件中的Button(发送按钮)赋值给Button的局部变量,第四行为其设置点击事件,new buttonlistener()这个是实现了View.OnClickListener接口的内部类的对象,接着我们在来看一个这个内容类

public void onClick(View v) {

// TODO Auto-generated method stub

EditText edit=(EditText) findViewById(R.id.edit);1

String number=edit.getText().toString();2

Intent intent=new Intent();3

intent.setAction("android.intent.action.CALL");4

intent.setData(Uri.parse("tel:"+number));5

startActivity(intent);6

}

数字为1的那一行,跟上面类似,把id为edit的EditText赋值给类型为EditText的edit,

数字为2的那一行是为了获取编辑框的数字,也即是需要拨打的手机号码,

数字为3的行是创建一个intent,

数字的4的那一行是通过intent来设置点击事件需要执行的行动,其中,android.intent.action.CALL,为启动电话拨号器的行动

数字为5的那一行,是为拨打电话的action设置号码,因为电话号码是以uri表示,所以将电话号码的字符串转换成uri,Uri.parse("tel:"+number)也即是这个,

最后一个即是启动intent.

最后说下拨打电话,属于一种隐私行为,因为拨打电话是需要扣费的,所以不行随便打,所以拨打电话需要一种权限我们需要把这句

添加到AndroidManifest.xml文件中