android中CheckBox的isChecked的使用

范例说明

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

以下范例将设计一个TextView放入条款文字,在下方配置一个CheckBox Widget作为选取项,通过Button.onClickListener按钮事件处理,取得User同意条款的状态。

CheckBox.isCheckedtrue,更改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. */

 

  /*声明 TextViewCheckBoxButton对象*/

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

   

    /*取得TextViewCheckBoxButton*/

    myTextView1 = (TextView) findViewById(R.id.myTextView1);

    myTextView2 = (TextView) findViewById(R.id.myTextView2);

    myCheckBox = (CheckBox) findViewById(R.id.myCheckBox);

    myButton = (Button) findViewById(R.id.myButton);

   

    /*CheckBoxButton默认为未选择状态*/

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

你可能感兴趣的:(android,user,扩展,import,button,手机游戏)