首页 > 代码库 > 安卓学习第7课——checkbutton

安卓学习第7课——checkbutton

1.布局

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical" ><TableRow>    <TextView         android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="性别:"/>    <RadioGroup        android:id="@+id/rg"        android:orientation="horizontal"        android:layout_gravity="center_horizontal" >    <RadioButton        android:id="@+id/male"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="男" />     <RadioButton        android:id="@+id/female"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="女" />     </RadioGroup></TableRow><TableRow >    <TextView         android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="喜欢的颜色"/>    <LinearLayout     android:layout_width="wrap_content"        android:layout_height="wrap_content"    android:orientation="vertical">    <CheckBox        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="红色" />    <CheckBox        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="蓝色" />    <CheckBox        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="绿色" />    </LinearLayout></TableRow><TextView         android:id="@+id/show"        android:layout_width="wrap_content"        android:layout_height="wrap_content"/></TableLayout>

首先整体用的是TableLayout,表格布局

然后将单选框那部分放在TableRow里,里面有一个TextView和两个RadioButton(这两个用RadioGroup括起来,形成一个整体)

还有多选框部分,用TableRow括起来,里面有三个checkbox用LinearLayout括起来。形成线性布局,竖直方向的。

最后的是单独放了一个TextView显示结果等。

2.实现选择单选框显示一句话。

package com.example.checkbutton;import android.app.Activity;import android.os.Bundle;import android.widget.RadioGroup;import android.widget.RadioGroup.OnCheckedChangeListener;import android.widget.TextView;public class MainActivity extends Activity {RadioGroup rg;TextView show;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        rg=(RadioGroup) findViewById(R.id.rg);        show=(TextView) findViewById(R.id.show);        rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){            @Override            public void onCheckedChanged(RadioGroup group, int checkedId) {                // TODO Auto-generated method stub                String tip=checkedId==R.id.male?                        "您的性别是男人":"您的性别是女人";                show.setText(tip);            }            });    }}

将两个RadioBox的整体RadioGroup作为一个对象,对他进行事件监听。

用了条件运算符,String tip=checkedId==R.id.male? "您的性别是男人":"您的性别是女人";

最后setText就成。