拨打电话项目:
- 创建android项目
- 设置布局
- 1.TextView文本
- 2.EditText电话号码输入框
- 3.拨打电话按钮
- 处理拨打电话请求
- 获取控件
- 给拨打电话按钮设置点击事件
- 获取EditText电话号码输入框文本内容
- 设置拨打电话的intent
- toast拨打电话效果
- 添加拨打电话的权限
说明和要求:
- 掌握通过findViewById获取控件,
- 掌握按钮的点击事件,
- 掌握通过getText方法获取EditText的值,
- 了解android中intent拨打电话的权限,
- 掌握toast效果
给textView编辑文本信息
填写你想要的文本信息
填写之后的
给text设置文本信息
设置后显示的效果
activity_phone.xml
<RelativeLayout 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"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".PhoneActivity" >
<!--
android:id:id
布局:wrap_content包裹
android:layout_width:宽
android:layout_height:高
text: 显示的文本引用
android:layout_below:在什么下方
-->
<TextView
android:id="@+id/viewphone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/phone" />
<EditText
android:id="@+id/editphone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/viewphone"
android:layout_below="@+id/viewphone"
android:layout_marginTop="16dp"
android:ems="10"
android:inputType="phone" >
<requestFocus />
</EditText>
<Button
android:id="@+id/btnphone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editphone"
android:layout_below="@+id/editphone"
android:layout_marginTop="23dp"
android:text="@string/buttonphone" />
</RelativeLayout>
strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">lession01_phone</string>
<string name="action_settings">Settings</string>
<string name="phone">拨打电话</string>
<string name="buttonphone">拨打</string>
</resources>
添加权限
PhoneActivity.java
package com.example.lession01_phone;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class PhoneActivity extends Activity {
private Button button_phone;
private EditText edit_phone;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_phone);
button_phone = (Button) findViewById(R.id.btnphone);
edit_phone = (EditText)findViewById(R.id.editphone);
button_phone.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String phone_Num = edit_phone.getText().toString();
Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+phone_Num));
PhoneActivity.this.startActivity(intent);
Toast.makeText(PhoneActivity.this, "正在给"+phone_Num+"拨打",Toast.LENGTH_LONG).show();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.phone, menu);
return true;
}
}
运行效果:
在模拟器5554给5556拨打电话
当5554给5556打电话时,5554显示的界面,并提示toast效果
当5554给5556打电话时,5556显示的界面