Android开发之电话拨号器实例详解

本文实例分析了Android开发之电话拨号器的用法。分享给大家供大家参考,具体如下:

1、新建一个名为javacallPhone的安卓项目,并在cn.csdn.hr.activity包下建一个CallPhoneActivity.java类

2.打开res下的Layout下的main.xml进行布局,设置布局方式为水平布局,再从左侧分别拖入textview,text files下的Phone,和button按钮,通过new String后效果如下:

3.打开CallPhoneActivity.java进行编写,具体代码如下:

package cn.csdn.hr.activity;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.text.Editable;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class CallPhoneActivity extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //设置显示的视图界面
    setContentView(R.layout.main);
    //获取该布局文件中相应的组件
    Button callBtn = (Button) findViewById(R.id.callBtn);
    //为按钮注册点击事件
    callBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// 拨号
//获取输入框 可编辑对象
EditText editText = (EditText) findViewById(R.id.editCallPhone);
//获取输入的电话号码
Editable editable = editText.getText();
//转换成字符串:editable.toString();
//意图
Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+editable.toString()));
//执行
startActivity(intent);
}
});
}
}

4.打开项目清单文件Andriod Manifest.xml,选择permissions,添加用户打电话权限,如下图:

5、在源代码中出现:

代码如下:

<uses-permission android:name="android.permission.CALL_PHONE"/>

6、最后run as 安卓应用,实现拨号功能

补充:android电话拨号器开发笔记

AndroidActivity:

package itcast.com;
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;
public class AndroidActivity extends Activity {
 private EditText editex;
 @Override
 public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.main);
 // 得到按钮
 Button button = (Button) this.findViewById(R.id.bt_number);
 editex = (EditText) this.findViewById(R.id.et_number);
 // 设置button监听器
 // 方式二:通过匿名内部类
 //
 // button.setOnClickListener(new OnClickListener() {
 //
 // @Override
 // public void onClick(View v) {
 // // TODO Auto-generated method stub
 // String number = editex.getText().toString(); // 获取电话号码
 // Intent intent = new Intent(); // 创建意图
 // intent.setAction(Intent.ACTION_CALL); // 设置打电话的意图
 // intent.setData(Uri.parse("telphone" + number)); // 拨打的具体号码
 // startActivity(intent);// 激活意图
 // }
 // });
 // button.setOnClickListener(this); // 当前的实现这是AndroidActivity
 }
 public void btlisten(View v) {
 String number = editex.getText().toString();
 Intent intent = new Intent();
 intent.setAction(Intent.ACTION_CALL);
 intent.setData(Uri.parse(number));
 startActivity(intent);
 }
 // // 方式三 实现了,OnClickListener
 // @Override
 // public void onClick(View v) {
 // // TODO Auto-generated method stub
 // switch (v.getId()) {
 // case R.id.bt_number:
 // // 相应的按钮时间
 // String number = editex.getText().toString();
 // Intent intent = new Intent();
 // intent.setAction(Intent.ACTION_CALL);
 // intent.setData(Uri.parse(number));
 // startActivity(intent);
 // break;
 // }
 // }
 // 方式一
 // class MyOnClickListener implements OnClickListener {
 //
 // @Override
 // public void onClick(View v) {
 // // TODO Auto-generated method stub
 // // 获取文本域
 // EditText editext = (EditText) AndroidActivity.this
 // .findViewById(R.id.et_number);
 // // 得到电话号码
 // String number = editext.getText().toString();
 // Intent intent = new Intent(); // 创建意图.代表要执行的动作
 // intent.setAction(Intent.ACTION_CALL); // 拨打电话的意图
 // intent.setData(Uri.parse(number));// 拨打的号码 例如110
 // startActivity(intent);// 激活意图
 // }
 // }
}

mian.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/input_number" />
  <EditText
    android:id="@+id/et_number"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:hint="@string/print"
    android:lines="1"
    android:numeric="integer" />
  <Button
    android:id="@+id/bt_number"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/bt_call"
    android:onClick="btlisten"/>
</LinearLayout>

Strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <string name="hello">Hello World, AndroidActivity!</string>
  <string name="app_name">AndroidCall</string>
  <string name="input_number">请输入电话号码</string>
  <string name="print">请输入号码</string>
  <string name="bt_call">拨打电话</string>
</resources>

需求

拨打电话的程序
 
步骤

1. 配置文件

strings.xml      负责的页面是文字

main.xml      负责页面的布局以及每个空间的ID
     
2.java的代码:

通过ID 获取button

监听button(参数view)
    
3.MyOnCliockListenr

处理事件:
得到EdiText,获取电话号码
创建意图的引用:Intent intrnt = new Intent();
设置意图对象的动作setAction()
拨打电话号码setData()
开启意图statAchivate(Intent)
修改安全异常:AndroidMainfest.xml中的permissions-->android.permission.CALL_PHONE

希望本文所述对大家Android程序设计有所帮助。

(0)

相关推荐

  • Android简易电话拨号器实例详解

    安卓开发简易电话拨号器,具体内容如下 我是基于安卓4.2.2开发的,下面是我写的MainActivity.java代码: package com.example.phone; import android.support.v7.app.ActionBarActivity; import android.support.v4.app.Fragment; import android.content.Intent; import android.net.Uri; import android.os.

  • Android编程简单实现拨号器功能的方法

    本文实例讲述了Android编程简单实现拨号器功能的方法.分享给大家供大家参考,具体如下: 学习Android已经有2天时间了,没学习的时候觉得android可能很枯燥,但是学过之后我发觉其实这个比什么javaweb好玩多了.学习android可以见到一些很有趣的东西,这里呢也建议学习javaME的人不要在煎熬了,学习android吧.在写程序之前也需要知道android的工作原理 1.获取组件清单 2.登记或注册组件 3.将组件封装成意图 4.把意图交给意图处理器进行处理 5.把界面显示给用户

  • Android实现简单的拨号器功能

    简易拨号器的制作方法,具体如下 一.布局构造 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textView&quo

  • Android学习笔记(二)之电话拨号器

    目前Android已经在只能手机市场已经具有强大的霸主地位,也吸引了越来越多的追捧者.Android的学习也越来越火.但是,报名费用确实大多人望而却步 一.新建项目CallPhone 1.1.建立项目 二.设置界面与项目名称 2.1.更改项目名称 res/values下strings.xml中更改app_name电话拔号器 string.xml <?xml version="1.0" encoding="utf-8"?> <resources>

  • Android开发之电话拨号器和短信发送器实现方法

    本文实例讲述了Android开发之电话拨号器和短信发送器实现方法.分享给大家供大家参考,具体如下: 电话拨号器 实现原理:用户输入电话号码,当点击拨打的时候,由监听对象捕获,监听对象通过文本控件获取到用户输入的电话号码,由于系统已经实现了电话拨号功能,所以我们只需要调用这个功能就可以了. 步骤: 1.界面布局 2.编写Activity 3.使用意图过滤器激活电话拨号功能 4.添加电话服务权限(用手机的电话服务,要在清单文件AndroidManifest.xml中添加电话服务权限) 如图所示这三个

  • Android电话拨号器实例详解

    笔者正在自学Android开发,随着学习的进程的加深,我会写一些小白级别的案例,一是为了保存代码和笔记,二也是为了供同样热爱Android的小伙伴参考.这里写了一个小案例,叫电话拨号器.下面详细介绍如何做: 对于我们初学者来说,做案例不同于做项目,我们是为了学习所以做案例基本上就是以下三步: 1.做界面UI 2.做业务逻辑,就是具体的编程实现 3.做测试,可以用模拟器,也可用真机.(这里说一下,如果你的电脑配置不是很高,但有Android的真机的话,用真机吧,模拟器真的是太慢了) 首先,做UI,

  • Android Studio Intent隐式启动,发短信,拨号,打电话,访问网页等实例代码

    Android Studio Intent隐式启动,发短信,拨号,打电话,访问网页等实例代码 功能 创建5个按钮,隐式启动.发短信.拨号按钮.电话按钮.打开网页按钮.通过使用Intent来完成各自按钮下的功能 代码目录如下 详细代码如下: activity_main.xml代码如下 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://sc

  • Android电话拨号器实现方法

    本文实例讲述了Android电话拨号器实现方法.分享给大家供大家参考.具体如下: 以下案例模拟android电话拨号器的实现 AndroidManifest.xml清单列表 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ljq

  • Android 2.3 拨号上网流程从源码角度进行分析

    通常,如果我们想使用SIM卡拨号上网功能,我们要在设置中进行简单的配置,步骤如下: 设置 ->无线和网络 ->移动网络 ->(已启用数据/数据漫游/接入点名称/仅使用2G网络/网络运营商) 我们必须选中其中的"已启用数据"选项,然后配置接入点名称后就可以上网了,当然有的设置中已经根据你的SIM卡类型默认设置了接入点,这时候你只选择"已启用数据"项后就可以完成上网功能设置. 这些设置步骤究竟做了哪些事情呢?我们现在就从源码的角度进行分析. 1. 首先

  • Android开发之电话拨号器实例详解

    本文实例分析了Android开发之电话拨号器的用法.分享给大家供大家参考,具体如下: 1.新建一个名为javacallPhone的安卓项目,并在cn.csdn.hr.activity包下建一个CallPhoneActivity.java类 2.打开res下的Layout下的main.xml进行布局,设置布局方式为水平布局,再从左侧分别拖入textview,text files下的Phone,和button按钮,通过new String后效果如下: 3.打开CallPhoneActivity.ja

  • Android 开发中使用Linux Shell实例详解

    Android 开发中使用Linux Shell实例详解 引言 Android系统是基于Linux内核运行的,而做为一名Linux粉,不在Android上面运行一下Linux Shell怎么行呢? 最近发现了一个很好的Android Shell工具代码,在这里分享一下. Shell核心代码 import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.

  • Android开发中滑动分页功能实例详解

    本文实例讲述了Android开发中滑动分页功能.分享给大家供大家参考,具体如下: android UI 往右滑动,滑动到最后一页就自动加载数据并显示 如图: Java代码: package cn.anycall.ju; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import andro

  • Android xmlns 的作用及其自定义实例详解

     Android xmlns 的作用及其自定义实例详解 xmlns:Android="http://schemas.android.com/apk/res/android的作用是: 这个是xml的命名空间,有了他,你就可以alt+/作为提示,提示你输入什么,不该输入什么,什么是对的,什么是错的,也可以理解为语法文件.或者语法判断器什么的 这个主要作用是在运行的时候那些控件的属性都是通过它来识别的,如果上面你写错了,不会有任何问题,但是在运行的时候就会有问题,提示你没有指定宽度等什么.这个是不用联

  • Android开发使用HttpURLConnection进行网络编程详解【附源码下载】

    本文实例讲述了Android开发使用HttpURLConnection进行网络编程.分享给大家供大家参考,具体如下: --HttpURLConnection URLConnection已经可以非常方便地与指定站点交换信息,URLConnection下还有一个子类:HttpURLConnection,HttpURLConnection在URLConnection的基础上进行改进,增加了一些用于操作HTTP资源的便捷方法. setRequestMethod(String):设置发送请求的方法 get

  • Android开发使用URLConnection进行网络编程详解

    本文实例讲述了Android开发使用URLConnection进行网络编程.分享给大家供大家参考,具体如下: URL的openConnection()方法将返回一个URLConnection,该对象表示应用程序和URL之间的通信连接,程序可以通过URLConnection实例向该URL发送请求,读取URL引用的资源.通常创建一个和URL的连接,并发送请求,读取此URL引用的资源. 需要如下步骤: a)通过调用URL对象openConnection()方法来创建URLConnection对象 b)

  • AngularJS中的拦截器实例详解

    AngularJS中的拦截器实例详解 异步操作 有时候需要在拦截器中做一些异步操作.幸运的是, AngularJS 允许我们返回一个 promise 延后处理.它将会在请求拦截器中延迟发送请求或者在响应拦截器中推迟响应. 下面是项目中用到的代码. ZbtjxcApp.factory('myHttpInterceptor', ['$q', '$window','$location', function($q, $window,$location) { return { // 全局响应 'respo

随机推荐