在Android虚拟机上实现拨号功能小应用程序(额,当然不是虚拟机上原配的电话功能)
首先,在res/values的strings.xml文件中实现如下代码:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name = "input_info">请输入您要拨打的号码</string>
<string name = "button_caption">拨打</string>
</resources>
然后,于res/layout的main.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_info"
/>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/phone_number"
/>
<Button android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:text = "@string/button_caption"
android:id="@+id/dial_btn" />
</LinearLayout>
然后,在实现java代码:
package cn.class3g.activity;
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 PhoneActivity extends Activity {
EditText numberEt;
Button dialBtn;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
findViews();
dialBtn.setOnClickListener(new OnClickListener(){
public void onClick(View v){
//调用系统的拨号服务实现电话拨打功能
String phone_number = numberEt.getText().toString();
phone_number = phone_number.trim();
if(phone_number != null && !phone_number.equals("")){
//封装一个拨打电话的intent,并且将电话号码包装成一个Uri对象传入
Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+phone_number));
PhoneActivity.this.startActivity(intent);
}
}
});
}
public void findViews(){
numberEt = (EditText)this.findViewById(R.id.phone_number);
dialBtn = (Button)this.findViewById(R.id.dial_btn);
}
}
保存,Ok,启动Android虚拟机……
Ok,在启动一个虚拟机,进行拨号
Ok,测试成功。