java 学习第11课,android 实现拨打电话的功能

1. 先布局界面,界面采用线性垂直方式来布局

在layout 界面文件中 activity_main.xml 中

<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="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/mobile" />

    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="@null"
        android:id="@+id/mobile"
        />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button"
        android:id="@+id/button"  //这里是导入这个按钮的id,会自动在R.java中生成
        />

</LinearLayout>

2.在MainActivity文件中,

package com.example.phone;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //显示窗口内容后,登记按钮事件
        Button button = (Button)this.findViewById(R.id.button);
        button.setOnClickListener(new ButtonClickListener());
    }

    //定义内部事件
    private final class ButtonClickListener implements View.OnClickListener{

        @Override
        public void onClick(View v) {
            //先得到输入框对象,然后取到输入的值
            EditText mobileText = (EditText)findViewById(R.id.mobile);
            String number = mobileText.getText().toString();

            //定义一个意图对象,指定行为及数据,调用Android的拨号功能
            Intent intent = new Intent();
            intent.setAction("android.intent.action.CALL");
            //intent.addCategory("android.intent.category.DEFAULT");//方法内部会自动为意图添加类别,所以不必加
            intent.setData(Uri.parse("tel:" + number));  //这里电话号码要用Uri格式
            startActivity(intent); //方法内部会自动为意图添加类别,,所以上面注释掉 android.intent.category.DEFAULT

            //这里注意的是,这里调用了,还需要在配置文件中声明一下拨号权限
            //在AndroidManifest.xml中声明
            //<!-- 这里导入权限,否则没法打电话 -->
            //<uses-permission android:name="android.permission.CALL_PHONE" />
        }

    }
}

3. 在AndroidManifest.xml 中声明权限

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

此拨号器,经实验,安装在手机上,可以直接打电话,不错!!!

时间: 2024-10-03 22:15:45

java 学习第11课,android 实现拨打电话的功能的相关文章

安卓学习第11课——AutoCompleteTextView

...在百度上搜了这么一段.理解了ArrayAdapter的三个参数的用途 1. 这个小例子是要显示一个数组,我们就用ArrayAdapter,数组适配器,数据的数据类型<>是String类型的,数据的数据类型还可以是其他的包括对象类型的 2. ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(ArrayListDemo.this, android.R.layout.simple_list_item

android学习笔记之调用拨号界面拨打电话

调用拨号界面拨打电话(不直接打出去) Intent intent1=  new Intent(Intent.ACTION_DIAL);             intent1.setData(Uri.parse("tel:400-8181800"));           startActivity(intent1); Manifest文件里:   设置权限 <uses-permission android:name="android.permission.CALL_P

Android手机拨打电话的开发实例

一部手机最常用的功能就是打电话和发短信了,在Android开发中我们如何通过程序拨打电话呢?本文就给出一个用Android手机拨打电话的简单的实例. 下面是开发此实例的具体步骤: 一.新建一个Android工程,命名为phoneCallDemo. 二.设计程序的界面,打开main.xml把内容修改如下: XML/HTML代码 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:and

移动网页如何实现发送短信和拨打电话的功能

手机页面实现发送短信和拨打电话的功能非常简单,只需要<a>标签加一个属性就可以了. 1.发送短信的功能 html前端代码: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" /> 5 <title>手机网页发送短信和拨打电话</title> 6 </head> 7 <body> 8 <a href=&qu

android 调用拨打电话,程序崩溃

FATAL EXCEPTION: main03-27 17:43:08.012: E/AndroidRuntime(18523): Process: com.mtq.freighthelper, PID: 1852303-27 17:43:08.012: E/AndroidRuntime(18523): java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.CALL

Android 直接拨打电话界面

Android 拨号界面和直接拨打电话界面代码控制 //定义TAG为空 private static final String TAG = null; //定义Button的点击事件 tell.setOnClickListener(new View.OnClickListener() {    @Override  public void onClick(View v) {   // TODO Auto-generated method stub /*  Intent intent = new

Android调用拨打电话 代码

package auscend.sdk; 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.EditTe

java 学习第13课,android 实现发送短信的功能

1. 界面布局 界面代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView andro

java 学习第9课,java android 项目的安装与启动过程

android 安装过程: 开发工具先把.java文件转换成.class,然后转换成dx,再签名打包成apk,最后在设备上执行 adb install c:\xxx.apk android 启动过程: 双击设备上的图标,创建进程-> 创建主线程 -> 在主线程中实例化 Activity(操作系统会把应用有关的信息context存进activity中,然后调用onCreate(). ) package com.example.hello; import android.app.Activity;