读书人

Android札记(四):Android中的CheckBox

发布时间: 2012-07-25 09:43:06 作者: rapoo

Android笔记(四):Android中的CheckBox

Android自带了丰富的基础组件,这次我们要介绍的CheckBox。

先看本次实例代码的运行效果:

Android札记(四):Android中的CheckBox

?

首先我们在strings.xml中定义CheckBox和显示的TextView中字符串,代码如下:

?

?

    <string name="app_name">AndroidWithCheckBox</string>    <string name="hobby">你的爱好是:</string>    <string name="basketball">篮球</string>    <string name="football">足球</string>

?

而后在main.xml中定义我们的组件,两个CheckBox和一个TextView

<TextView  android:id ="@+id/showText"    android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="@string/hobby"    />    <CheckBox android:id="@+id/basketballCheckBox"android:text="@string/basketball"android:layout_width="wrap_content"android:layout_height="wrap_content"/>  <CheckBox android:id="@+id/footballCheckBox"android:text="@string/football"android:layout_width="wrap_content"android:layout_height="wrap_content"/>  

?

在Activity子类中, 先获取到在main.xml中定义的三个组件,而后给CheckBox添加上OnCheckedChangeListener

,具体代码如下:

public class Test extends Activity {    /** Called when the activity is first created. */private TextView view  ;private CheckBox basketballCheckBox ;private CheckBox footballCheckBox ;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                view = (TextView)findViewById(R.id.showText);        basketballCheckBox = (CheckBox)findViewById(R.id.basketballCheckBox);        footballCheckBox = (CheckBox)findViewById(R.id.footballCheckBox);                basketballCheckBox.setOnCheckedChangeListener(cbListener);        footballCheckBox.setOnCheckedChangeListener(cbListener);            }        private CheckBox.OnCheckedChangeListener cbListener =     new CheckBox.OnCheckedChangeListener(){public void onCheckedChanged(CompoundButton arg0, boolean arg1) {String hobby = getString(R.string.hobby);String basketball = getString(R.string.basketball);String football = getString(R.string.football);String showText = "";if(basketballCheckBox.isChecked()&&footballCheckBox.isChecked()){view.setText(showText = hobby+basketball+","+football);}else if(basketballCheckBox.isChecked()&&!footballCheckBox.isChecked()){view.setText(showText = hobby+basketball);}else if(!basketballCheckBox.isChecked()&&footballCheckBox.isChecked()){view.setText(showText = hobby+football);}else{view.setText(showText = hobby+"不是下面的两项");}Toast.makeText(Test.this, showText, Toast.LENGTH_SHORT).show();}};}

?

?

?

?

读书人网 >Android

热点推荐