当前位置:主页 > 移动开发 > Android代码 >

Android 中CheckBox的isChecked的使用实例详解

时间:2020-10-10 22:22:42 | 栏目:Android代码 | 点击:

Android 中CheckBox的isChecked的使用实例详解

范例说明

所有的网络服务在User使用之前,都需要签署同意条款,在手机应用程序、手机游戏的设计经验中,常看见CheckBox在同意条款情境的运用,其选取的状态有两种即isChecked=true与isChecked=false。

以下范例将设计一个TextView放入条款文字,在下方配置一个CheckBox Widget作为选取项,通过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程序略 */

 

public class EX04_04 extends Activity

{

 /** Called when the activity is first created. */

 

 /*声明 TextView、CheckBox、Button对象*/

 public TextView myTextView1;

 public TextView myTextView2;

 public CheckBox myCheckBox;

 public Button myButton;

 

 @Override

 public void onCreate(Bundle savedInstanceState)

 {

 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(new CheckBox.OnClickListener()

 {

  @Override

  public void onClick(View v)

  {

  // TODO Auto-generated method stub

  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(new Button.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里面的值*/

CharSequence hint = getString(R.string.hello);

myCheckBox.setHint(hint);

 

/*设置文字颜色*/

myCheckBox.setHintTextColor(Color.RED);

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

您可能感兴趣的文章:

相关文章