3

我需要使用选项卡(RadioButton)在应用程序中切换片段。我应该使用什么事件监听器?onClick 还是 onCheckedChanged?如果可以举例

4

1 回答 1

7

对于单身RadioButton ,您可以使用OnClickListener如下:

         OnClickListener listener = new OnClickListener() {
               @Override
               public void onClick(View v) {
                      RadioButton rb = (RadioButton) v;
                      Toast.makeText(your_Activity.this, rb.getText(), 
                      Toast.LENGTH_SHORT).show();
               }
         };

         RadioButton rb1 = (RadioButton) findViewById(R.id.radioButton1);
         rb1.setOnClickListener(listener);

如果RadioGroup您需要使用OnCheckedChangeListener如下:

    RadioGroup radioGroup = (RadioGroup) findViewById(R.id.yourRadioGroup);

    radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() 
    {
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            // checkedId is the RadioButton selected

            switch(checkedId) {
                  case R.id.radioButton1:
                       // switch to fragment 1                
                       break;
                  case R.id.radioButton2:
                      // Fragment 2
                      break;
                  case R.id.radioButton3:
                      // Fragment 3
                      break;
            }   
        }
    }); 

onCheckedChanged 回调在 checkedId 参数中接收新选中按钮的 ID。

于 2013-08-19T20:04:20.497 回答