小说网站 搜小说 无限网 烟雨红尘 小说爱好者 免费小说 免费小说网站

Android简易实战教程--第三话《自己实现打电话》

需要一个文本输入框输入号码,需要一个按钮打电话。本质:点击按钮,调用系统打电话功能。

xml布局文件代码::

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" 
    android:orientation="vertical"
    >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="请输入号码" />
    <EditText 
        android:id="@+id/et_phone"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />
    <Button
        android:id="@+id/bt_call" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="拨打"
        />

</LinearLayout>

mainactivity中代码:


package com.ydl.dialer;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
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);
        
        //给按钮设置点击侦听
        //1.拿到按钮对象
        Button bt = (Button) findViewById(R.id.bt_call);//Button类是View的子类,向下转型要强转。
        //2.设置侦听
        bt.setOnClickListener(new MyListener());
    }

    class MyListener implements OnClickListener{

    	//按钮被点击时,此方法调用
		@Override
		public void onClick(View v) {
			//获取用户输入的号码
			EditText et = (EditText) findViewById(R.id.et_phone);
			String phone = et.getText().toString();
			
			//我们需要告诉系统,我们的动作:我要打电话
			//创建意图对象
			Intent intent = new Intent();
			//把打电话的动作ACTION_CALL封装至意图对象当中
			intent.setAction(Intent.ACTION_CALL);
			//设置打给谁
			intent.setData(Uri.parse("tel:" + phone));//这个tel:必须要加上,表示我要打电话。否则不会有打电话功能,由于在打电话清单文件里设置了这个“协议”
			
			//把动作告诉系统,启动系统打电话功能。
			startActivity(intent);
		}
    	
    }
    
}




posted on 2016-06-25 22:06  王小航  阅读(184)  评论(0编辑  收藏  举报

导航