一、效果图如下
二、
因为应用要使用手机的电话服务,所以要在清单文件AndroidManifest.xml中添加电话服务权限:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="cn.itcast.action"
android:versionCode="1"
android:versionName="1.0">
略....
<uses-sdk android:minSdkVersion=“6" />
<uses-permission android:name="android.permission.CALL_PHONE"/>
</manifest>
三、布局界面
界面布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TextView
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:text="@string/inputmobile"/>
<EditText android:layout_width="fill_parent" android:layout_height="wrap_content"
android:id="@+id/mobile"/>
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="@string/button"
android:id="@+id/button"/>
</LinearLayout>
LinearLayout (线性布局)、AbsoluteLayout(绝对布局)、RelativeLayout(相对布局)、TableLayout(表格布局)、FrameLayout(帧布局)
四、PhoneActivity类中的代码:
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 EditText editText; private Button button_phone; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 设置显示pylt setContentView(R.layout.activity_phone); //获取按钮组件 button_phone=(Button) findViewById(R.id.phone_button); //获取输入框组件 editText = (EditText) findViewById(R.id.phone_text); //注册按钮事件 button_phone.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub //获取号码 String phone_Num = editText.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; } }
五、测试步骤
测试步骤:
1>在Eclipse中运行此应用
2>在Dos窗口中进入android SDK安装路径的tools目录,输入以下命令再开启一个Android模拟器:
emulator -data itcast
注:itcast为用户数据存取文件,如果该文件不存在,默认在tools目录创建该文件
3>在电话扰号器中输入上图现显的电话号码