Reputation: 379
I want to show a Seekbar, when I check an Checkbox and the Seekbar shall disappear, when I uncheck the Checkbox.
But it only works for me, that the Seekbar appears by clicking the Checkbox but doesn't disappear, when I uncheck the Checkbox.
I tried it with a ClickListener:
begrenzungsCheckBox = (CheckBox) findViewById(R.id.filebegrenzungCheckBox); begrenzungsCheckBox.setOnClickListener(filebegrenzungsListenerCheckbox);
OnClickListener filebegrenzungsListenerCheckbox = new OnClickListener() {
@Override
public void onClick(View v) {
TextView filebegrenzungAnzeige = (TextView) findViewById(R.id.filebegrenzungAnzeige);
SeekBar filebegrenzungsSeekbar = (SeekBar) findViewById(R.id.filebegrenzungSeekbar);
filebegrenzungAnzeige.setVisibility(View.VISIBLE);
filebegrenzungsSeekbar.setVisibility(View.VISIBLE);
}
};
and here is the corresponding xml layout file:
<SeekBar android:id="@+id/filebegrenzungSeekbar" android:layout_width="wrap_content" android:visibility="invisible" android:layout_height="wrap_content" />
How to use the ClickListener in order to have the possibility to check and uncheck the Checkbox or which alternatives are there to realise that?
Upvotes: 2
Views: 71
Reputation: 1518
Use this:
if (chk1.isChecked()) {
ShowSeekBar();
} else {
makeInvisibleSeekBar();
}
Upvotes: 0
Reputation: 5911
OnClickListener fires for every click event. It doesn't care whether the checkbox gets checked or unchecked. Use an OnCheckedChangedListener instead:
*your checkbox*.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
TextView filebegrenzungAnzeige = (TextView) findViewById(R.id.filebegrenzungAnzeige);
SeekBar filebegrenzungsSeekbar = (SeekBar) findViewById(R.id.filebegrenzungSeekbar);
filebegrenzungAnzeige.setVisibility(isChecked ? View.VISIBLE : View.INVISIBLE);
filebegrenzungsSeekbar.setVisibility(isChecked ? View.VISIBLE : View.INVISIBLE);
}
});
Upvotes: 2