当前位置: 代码迷 >> Android >> Android札记(四):Android中的CheckBox
  详细解决方案

Android札记(四):Android中的CheckBox

热度:34   发布时间:2016-05-01 18:25:40.0
Android笔记(四):Android中的CheckBox

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();			}};}

?

?

?

?

  相关解决方案