(一)电话拨号器
一、首先,说一下项目中的重要文件,这是几个必须用到的,因为我是自学中,可能不太准确,希望不要误导别人。
二、开发
1、我的开发思路,首先定义项目中需要用到的变量,因为项目简单,在开发前我们就知道要定义那些变量了、遇到复杂项目我们可以在用到变量是在该文件定义;
strings.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">电话拨号器</string> <string name="mobile">请输入手机号</string> <string name="button">拨打电话</string> </resources>
2、页面布局
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 //标签、相当于lable android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/mobile" /> <EditText //文本框、相当于Text android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/mobile"> </EditText> <Button //按钮、触发事件 android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button" android:id="@+id/button" /> </LinearLayout>
3、后台代码
MainActivity.java
package ysc.itcast.phone; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity { /** Called when the activity is first created. */ private EditText mobileText; //定义EditText变量,用于获取输入的电话号码 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mobileText=(EditText)findViewById(R.id.mobile);//通过ID得到变量 Button button =(Button)this.findViewById(R.id.button);//得到Button button.setOnClickListener(new ButtonClickListener()); //调用事件 } private final class ButtonClickListener implements View.OnClickListener{ public void onClick(View v) { String number=mobileText.getText().toString();//后去电话号码 //拨打电话的代码 Intent intent=new Intent(); intent.setAction("android.intent.action.CALL"); intent.setData(Uri.parse("tel:"+ number)); startActivity(intent); } } }
4、因为拨打电话涉及到用户的权限、所以需要进行权限设置
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="ysc.itcast.phone" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:label="@string/app_name" android:name=".MainActivity" > <intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> //配置拨打电话权限 <uses-permission android:name="android.permission.CALL_PHONE"/> </manifest>
就此项目结束,可以在虚拟机上测试、也可在真机上实验。