选择某个RadioButton时,如何使UI组件消失

chi*_*jib 3 android visibility radio-button

我创建了一个布局xml文件,其中有两个RadioButtons.

默认情况下,RadioButton选择1并且我DatePicker在屏幕上显示一个组件,但是当用户选择RadioButton2时,它DatePicker应该从屏幕上消失.

我该如何处理这个场景?我应该在布局/ Java代码中进行更改吗?

Oct*_*ean 5

它实际上非常简单.

获取您RadioGroup和您的参考DatePicker.实现一个OnCheckedChangeListenerfor RadioGroup和检查那里RadioButton签到的.

如果RadioButton选中A,则将可见性设置DatePicker为可见,如果RadioButton选中B,则设置可见性goneinvisible根据您的要求设置.

举个例子.

public class MyActivity extends Activity {

    private RadioGroup choice;
    private DatePicker datePicker;

    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.your_layout);

        choice = (RadioGroup) findViewById(R.id.choice);
        datePicker = (DatePicker) findViewById(R.id.date_picker);

        choice.setOnCheckedChangeListener(
            new RadioGroup.OnCheckedChangeListener() {

            public void onCheckedChanged(RadioGroup group, int checkedId) {
                switch(checkedId) {
                    case R.id.radio_button_a:
                        datePicker.setVisibility(View.VISIBLE);
                        break;
                    case R.id.radio_button_b:
                        datePicker.setVisibility(View.GONE);                    
                        break;
                }
            }
        });

    }
}
Run Code Online (Sandbox Code Playgroud)

理论上应该是这样的.