Andriod编程基础(三):Android UI 基本常用组件实例

一、代码工程

      本例子在前面(二)中的工程进行改造,目的是熟悉Android UI的基本常用组件TextView、EditText、Button、RadioButton等。

 

二、修改main.xml 布局,添加UI 元素


android:id="@+id/widget0"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android" >
android:id="@+id/showText"
android:layout_width="wrap_content"
android:layout_height="26px"
android:text="计算你的标准体重!"
android:textSize="25px"
android:layout_x="65px"
android:layout_y="21px">

android:id="@+id/text_Sex"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="性别:"
android:layout_x="71px"
android:layout_y="103px">

android:id="@+id/text_Height"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="身高:"
android:layout_x="72px"
android:layout_y="169px">

android:id="@+id/radioGroup"
android:layout_width="wrap_content"
android:layout_height="37px"
android:orientation="horizontal"

android:layout_x="124px"
android:layout_y="101px">
android:id="@+id/Sex_Man"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="男">

android:id="@+id/Sex_Woman"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="女">


android:id="@+id/height_Edit"
android:layout_width="123px"
android:layout_height="wrap_content"
android:text=""
android:textSize="18sp"
android:layout_x="124px"
android:layout_y="160px">

android:id="@+id/button_OK"
android:layout_width="80px"
android:layout_height="wrap_content"
android:text="计算"
android:layout_x="125px"
android:layout_y="263px">

 

三、新建mylayout.xml,并添加UI 元素


android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
>

android:id="@+id/text1"

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:layout_x="50px"
android:layout_y="72px"
>

 

四、新建mylayout.java,并在在AndroidManifest.xml 添加Activity 定义

public class mylayout extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/* 加载main.xml Layout */
setContentView(R.layout.mylayout);
/* 取得Intent 中的Bundle 对象*/
Bundle bunde = this.getIntent().getExtras();
/* 取得Bundle 对象中的数据*/
String sex = bunde.getString("sex");
double height = bunde.getDouble("height");
/* 判断性别*/
String sexText = "";
if (sex.equals("M")) {
sexText = "男性";
} else {
sexText = "女性";
}

String weight = this.getWeight(sex, height);
/* 设置输出文字*/
TextView tv1 = (TextView) findViewById(R.id.text1);
tv1.setText("你是一位" + sexText + "/n你的身高是" + height +
"厘米/n你的标准体重是"+ weight + "公斤");
}
/* 四舍五入的method */
private String format(double num) {
NumberFormat formatter = new DecimalFormat("0.00");
String s = formatter.format(num);
return s;
}

/* 以findViewById()取得Button 对象,并添加onClickListener */
private String getWeight(String sex, double height) {
String weight = "";
if (sex.equals("M")) {
weight = format((height - 80) * 0.7);
} else {
weight = format((height - 70) * 0.6);
} return weight;
}
}

 

五、修改原工程中mytest.java的代码

public class Ex10_UI extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/* 载入main.xml Layout */
setContentView(R.layout.main);
/* 以findViewById()取得Button 对象,并添加onClickListener */
Button ok = (Button) findViewById(R.id.button_OK);
ok.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
/* 取得输入的身高*/
EditText et = (EditText) findViewById(R.id.height_Edit);
double height = Double.parseDouble(et.getText().toString());
/* 取得选择的性别*/
String sex = "";
RadioButton rb1 = (RadioButton) findViewById(R.id.Sex_Man);
if (rb1.isChecked()) {
sex = "M";
} else {

sex = "F";
}

Intent intent = new Intent();

 // new一  个 Intent对象并指定class
intent.setClass(mytest.this, mylayout.class);
/* new 一个Bundle对象,并将要传递的数据传入*/
Bundle bundle = new Bundle();
bundle.putDouble("height", height);
bundle.putString("sex", sex);
/* 将Bundle 对象assign 给Intent */
intent.putExtras(bundle);
/* 调用Activity EX03_10_1 */
startActivity(intent);
}
});
}
}

 

六、运行结果

 

 

 

点击桌面上Mytest图标(即本例子的应用),运行主程序代码,跳到以下页面。

 

选择性别,输入身高,并点击【计算】,则跳到以下结果页面。

 

 在本例子中,主要是介绍到了TextView、EditText、Button、RadioButton等最基本常用组件的用法,例子简单,但足以熟悉这几个组件的用法。

你可能感兴趣的:(Andriod)