3G安卓应用开发——打电话应用程序

打电话应用设计分:

 

1、设计界面     业务层《两者并行》(控制底层逻辑的代码)

2、设计Activity(作为处理用户输入输出和呈现数据的物件)

 

开发设计,首先按照开发习惯先从设计界面或业务层开始,因为这个程序不需要业务层,所以我们选择现从设计界面开始开发----然后在设计Activity;

手机打电话应用程序界面设计图3G安卓应用开发——打电话应用程序_第1张图片

 

做好界面的初步图形设计之后就要进行代码的开发了;

具体步骤:

(一)首先在eclipse中新建一个android project项目;   

(二)接着打开项目目录文件夹下的res文件夹下的 layout文件中得main.xml文件和value文件夹中得string.xml文件;

(三)开始配置xml文件,由上面的分析图可知;我们的界面设计需要在string.xml文件中设置:

          一个button组件作为打电话的按钮;

          一个EditText作为号码输入框;

          一个TextView显示程序的名称;

 

  具体的实现代码是:

         <resources>

         <string name="app_name">电话拨号器</string>

         <string name="mobile">请输入手机号</string>

          <string name="button">拨打此号码</string>

</resources>

 

 

 (四)在配置后string之后就要按main.xml添加属性了!

    

<TextView
<设置显示文本宽度和高度,fill_parent是和模拟器宽度相同
Wrap_content是框的daxiao随文本量的大小自动增长;“下同!”>
        android:layout_width="fill_parent"     
        android:layout_height="wrap_content"
        android:text="@string/mobile" />
    
    <EditText 
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/mobille"
        />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         android:text="@string/button"
         android:id="@+id/button"
        />

在设置玩之后点击保存,系统就会在R.java文件中自动生成所添加的组件,并已静态常量的形式生成:如果输入正确代码应该会是下面:

 

 public static final class id {
        public static final int button=0x7f050001;
        public static final int mobille=0x7f050000;
    }
    public static final class layout {
        public static final int main=0x7f030000;
    }
    public static final class string {
        public static final int app_name=0x7f040002;
        public static final int button=0x7f040001;
        public static final int mobile=0x7f040000;

此过程之后你可以把你的项目加载到安卓模拟器;会出现预先设计的界面结构:3G安卓应用开发——打电话应用程序_第2张图片

至此设计界面的工作就告一段落了!接下来就要进行Activity的开发了;

 

(五)、打开你的src文件夹下的**Activity.java文件,

     首先要考虑一个问题:

如何获取运行界面的输入框中用户输入的号码信息,和按钮的点击状态呢?

我们不难想到JSP中有个getELEMENTBYID()方法,同理,我们也可以给我们的button和EditText加上一个ID值,

然后就又回到上文了,

     要继续在xml文件中配置;

为EditText添加ID

   android:id="@+id/mobille"

为button添加ID

android:id="@+id/button"

 

要分别在两个组件的属性中配置;然后保存确定一下;

 

接下来我们就可以在我们的后天代码中获取界面中得button和EditText的值了

 

//获取button添加点击事件监听;

Button button =  (Button)this.findViewById(R.id.button);

button.setOnClickListener(new ButtonListener());

 

这个方法setOnClickListener是需要添加一个点击事件处理类来实现这个方法组要继承的接口(View)

用内部类实现;然后添加onclick方法

private final class ButtonListener implements View.OnClickListener{

     public void onClick(View v) {

 

   //在此内部来设定点击事件的处理方法;

//获取输入框的信息

EditText mobileText  =(EditText)findViewById(R.id.mobille);

新建mobile对象,传递文本框获取值;

String mobile = mobileText.getText().toString();

 

//实现打电话功能代码;

 

//我们的功能实现是通过系统已经具备的电话拨号组件来实现功能

//新建意图对象Intent---代表我们想要做的事情

Intent intent =

new Intent("android.intent.action.CALL(系统组件)",Uri.parse("tel:"+mobile)(系统数据表示方式“tel+号码”));

//将意图传给操作系统;  

startActivity(intent);

//内部会添加android.intent.category.DEFAULT;类别,有这个类别实现

 

}

}

这样我们的Acitivity的代码部分就写完了;

接下里要把权限声明一下(因为我们要利用系统的组件)要求必须要声明全限

 

下面我们在AndroidManifest.xml文件中添加声明;

<uses-permission android:name="android.permission.CALL_PHONE"/>

 

这样我们的代码就全部写完了,下面就可以部署到模拟器中来实现了!

3G安卓应用开发——打电话应用程序_第3张图片

 

你可能感兴趣的:(3G安卓应用开发——打电话应用程序)