android模拟打电话的应用小程序

介绍

android中已经有打电话的效果了,我们为了更好的了解android,所以来编写一个简单的android,来模拟。

代码详解

1. 首先我们来编写视图界面,视图界面我们以一个最简单的方式来体现,如图:

可视化的界面我们是通过layout中的main.xml来编写的,编写的代码为:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical" >

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/tipMsg" />

<EditText

android:id="@+id/phone"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:ems="10" >

<requestFocus />

</EditText>

<Button

android:id="@+id/callBtn"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/btn" />

</LinearLayout>

以上的文字是通过values中的strings.xml中引入的:

<string name="app_name">Phone</string>

<string name="tipMsg">请输入正确的电话号码</string>

<string name="btn">拨号</string>

注:@代表的是引用,+代码的是没有的话创建一个

在执行main.xml文件的时候是先寻找R.java中的内部类,再去寻找所对应的values下的strings.xml文件,在strints.xml中的文件在创建之后,就会在R.java中自动生成。

2. 点击拨号的时候触发事件

这就需要在src下的Activity中获取按钮的组件并获取文件框中输入的信息。

package cn.csdn.hr.android.phone;

import android.app.Activity;

import android.content.Intent;

import android.net.Uri;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

publicclass PhoneActivity extends Activity {

@Override

publicvoid onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 设置显示的视图

setContentView(R.layout.main);

// 获取当前这个实体

Button callBtn = (Button) findViewById(R.id.callBtn);

//所用的是匿名类

callBtn.setOnClickListener(new OnClickListener() {

publicvoid onClick(View v) {

// 触发按钮后的操作

// 获取文本组件

EditText phone = (EditText) findViewById(R.id.phone);

// 意图,告诉组件在拨号的时候要干什么

Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:"

+ phone.getText()));

// 开始处理意图

PhoneActivity.this.startActivity(intent);

// 给打电话赋的权限,androidManfest中设置权限

}

});

}

}

在最后一步给打电话赋权限,要打开AndroidManifest.xml,切换到Permissions视图,点击Add添加的按钮,出现一下的界面,选中User Permission

然后再右边Name中的下拉列表框中选择android.permission.CALL_PHONE,最终的结果为:

这样,一个简单的电话通信就完成了。我们可以打开两个模拟机来测试,比如说一个模拟机名字为5554,另一个为 5556,那么我们可以在5554的文本框中输入5556,即可测试

注:

获取文本信息 phone.getText()

更多相关文章

  1. Android全屏显示的两种方式
  2. android获取图片的RGB颜色值
  3. android项目案例6- 基于Android(安卓)studio的android用户注册
  4. Android全屏显示的两种方式
  5. Android疑惑记录-----在Adapter中配置按钮监听器时,列表项内容获
  6. 一网打尽Android-UI系列教程
  7. android程序获取WIFI的IP地址和MAC地址
  8. Android取消EditText自动获取焦点默认行为
  9. Android(安卓)高级UI组件

随机推荐

  1. mysql数据库utf-8编码
  2. 机智的MySQL优化器 --- is null
  3. 我需要PHP页面显示mysql数据库中的BLOB图
  4. 利用Intellij+MAVEN搭建Spring+Mybatis+M
  5. MySQL、JDBC安装以及用java连接
  6. mySql中SUBSTRING_INDEX函数用法
  7. mysql数据库之单表查询
  8. MYSQL如何导出存储过程和触发器?
  9. mysql百万级查询怎么样才能快速查询呢
  10. MySQL5.7 GTID学习笔记