Android 中CheckBox的isChecked的使用实例详解
Android中CheckBox的isChecked的使用实例详解
范例说明
所有的网络服务在User使用之前,都需要签署同意条款,在手机应用程序、手机游戏的设计经验中,常看见CheckBox在同意条款情境的运用,其选取的状态有两种即isChecked=true与isChecked=false。
以下范例将设计一个TextView放入条款文字,在下方配置一个CheckBoxWidget作为选取项,通过Button.onClickListener按钮事件处理,取得User同意条款的状态。
当CheckBox.isChecked为true,更改TextView的文字内容为“你已接受同意!!”,当未选取CheckBox时,Button则不可以被选择的(被Disabled)。
范例程序
src/irdc.ex04_04/EX04_04.java
利用CheckBox.OnClickListener里的事件来判断Button该不该显示,其方法就是判断Button.Enabled的值;在一开始时,默认参数为false,当有单击CheckBox时,Button参数就修改为true。
/*import程序略*/ publicclassEX04_04extendsActivity { /**Calledwhentheactivityisfirstcreated.*/ /*声明TextView、CheckBox、Button对象*/ publicTextViewmyTextView1; publicTextViewmyTextView2; publicCheckBoxmyCheckBox; publicButtonmyButton; @Override publicvoidonCreate(BundlesavedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); /*取得TextView、CheckBox、Button*/ myTextView1=(TextView)findViewById(R.id.myTextView1); myTextView2=(TextView)findViewById(R.id.myTextView2); myCheckBox=(CheckBox)findViewById(R.id.myCheckBox); myButton=(Button)findViewById(R.id.myButton); /*将CheckBox、Button默认为未选择状态*/ myCheckBox.setChecked(false); myButton.setEnabled(false); myCheckBox.setOnClickListener(newCheckBox.OnClickListener() { @Override publicvoidonClick(Viewv) { //TODOAuto-generatedmethodstub if(myCheckBox.isChecked()) { /*设置Button为不能选择对象*/ myButton.setEnabled(true); myTextView2.setText(""); } else { /*设置Button为可以选择对象*/ myButton.setEnabled(false); myTextView1.setText(R.string.text1); /*在TextView2里显示出"请勾选我同意"*/ myTextView2.setText(R.string.no); } } }); myButton.setOnClickListener(newButton.OnClickListener() { //程序略 }); } }
扩展学习
CheckBox在默认内容为空白时(没有任何默认的提示文字下),可设置提示User的文字,其调用的方法为CheckBox.setHint()方法;在扩展学习的范例练习,是抓取R.string.hello这个字符串常数,其与默认CheckBox文字的结果是相同的,你不妨试试看。
myTextView1=(TextView)findViewById(R.id.myTextView1); myTextView2=(TextView)findViewById(R.id.myTextView2); myCheckBox=(CheckBox)findViewById(R.id.myCheckBox); myButton=(Button)findViewById(R.id.myButton); myCheckBox.setChecked(false); /*利用setHIT抓取strings里面的值*/ CharSequencehint=getString(R.string.hello); myCheckBox.setHint(hint); /*设置文字颜色*/ myCheckBox.setHintTextColor(Color.RED);
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!