我的第一个Android软件——简单拨号器

我的“二次元phone”拨号器

它是可以打电话的哦~~~






对于一个编程小白来说,今天完成了第一个Android软件让我也是激动了好久~~~~~~

首先,我觉得Android软件的开发,布局很重要,做之前首先想好布局,这样就不会在做界面的时候乱了方寸,之前不知道布局是个什么东西,光一个界面就重做了好几次,这次我把RelativeLayout,LinearLayout(包括vertical和horizontal)的布局结合在了一起,虽然有点麻烦,但是这样会给我提供一个清晰的思路:



下面是布局的部分关键代码:
<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="fill_parent"
    android:background="@drawable/beijing2"
    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=".MainActivity" >//relativelayout布局

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >//vertical布局

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="0dp"

            android:layout_weight="2" >//horizontal布局
      <EditText
                android:id="@+id/editText1"
                android:layout_width="240dp"
                android:layout_height="30dp"
                android:layout_marginTop="14dp"
                android:background="#504d2b"
                android:ems="10"
                android:focusable="false"
                android:gravity="center"
                android:hint="请输入电话号码"
                android:textColorHint="#ffffff"
                android:textColorLink="#000000" >

                <requestFocus />
            </EditText>

            <Button
                android:id="@+id/button14"
                style="?android:attr/buttonStyleSmall"
                android:layout_width="30dp"
                android:layout_height="30dp"
                android:layout_marginLeft="5dp"
                android:layout_marginTop="12dp"
                android:background="@drawable/buttondelete"
                android:onClick="deleteStr" />
说明:要注意每部分的完整性,即<********/>形式
其次,在主函数里面,需要写出一些主要方法,即视图、文本框的获取,按钮文字的获取,意图方法的创建等:
如:public class MainActivity extends Activity {
//定义一个文本框对象
EditText et;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获得一个文本框对象
et = (EditText) this.findViewById(R.id.editText1);
//this.findViewById(R.id.editText1)得到的是视图,加(EditText)就可以转型
}
//点击按钮获得内容的方法
public void clickButton(View view){
//在Eclipse中的Android日志窗口中显示按钮值
Log.i("按钮的值",view.getTag().toString());
//获得文本框中的内容
String str = et.getText().toString();
//获得之前点击的数,并将新数进行追加
str += view.getTag().toString();
//设置文本框中的显示内容
et.setText(str);
}

public void deleteStr(View view){
String str = et.getText().toString();
if((str!=null) && !("".equals(str.trim()))){
str = str.substring(0, str.length()-1);
et.setText(str);
}
}
public void callPhone(View view){
String str = et.getText().toString();

if(str != null && !"".equals(str.trim())){
Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+str));
//Uri表示意图的格式
startActivity(intent);
}else{
Toast.makeText(MainActivity.this, "亲,请输入电话号码~~~", Toast.LENGTH_LONG).show();

}
}
注意:每个Activity是一个界面,而且要记得导包和授权;
最后,关键的授权代码为:
<uses-permission android:name = "android.permission.CALL_PHONE" />

猜你喜欢

转载自201226010609.iteye.com/blog/2114070