Я пытаюсь сделать прослушиватель для RadioGroup. Я не знаю, почему, но слушатель никогда не звонит, когда я проверяю кого-либо из переключателей. Я хочу сделать простое меню, чтобы выбрать язык. Спасибо заранее!Android-RadioGroup setOnCheckedChangeListener() не работает
public class Language extends AppCompatActivity {
private static final String TAG = Menu.class.getSimpleName();
private RadioButton englishButton, portugueseButton, spanishButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.language);
Toolbar myToolbar = (Toolbar) findViewById(R.id.toolbar1);
setSupportActionBar(myToolbar);
englishButton = (RadioButton) findViewById(R.id.english);
englishButton.setChecked(true);
portugueseButton = (RadioButton) findViewById(R.id.portuguese);
portugueseButton.setChecked(false);
spanishButton = (RadioButton) findViewById(R.id.spanish);
spanishButton.setChecked(false);
RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radio_group);
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
public void onCheckedChanged(RadioGroup group, int checkedId) {
Log.d(TAG, "Get IN: setOnCheckedChangeListener");
// find which radio button is selected
if(checkedId == R.id.english) {
portugueseButton.setChecked(false);
spanishButton.setChecked(false);
Toast.makeText(getApplicationContext(), "choice: English", Toast.LENGTH_SHORT).show();
} else if(checkedId == R.id.portuguese) {
englishButton.setChecked(false);
spanishButton.setChecked(false);
Toast.makeText(getApplicationContext(), "choice: Portuguese", Toast.LENGTH_SHORT).show();
} else if(checkedId == R.id.spanish){
englishButton.setChecked(false);
portugueseButton.setChecked(false);
Toast.makeText(getApplicationContext(), "choice: Spanish", Toast.LENGTH_SHORT).show();
}
}
});
}
}
Это мой XML-файл
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000000"
android:orientation="vertical">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar1"
android:layout_width="match_parent"
android:layout_height="85dp"
android:background="#670000"
app:popupTheme="@style/AppTheme.PopupOverlay">
<TextView
android:id="@+id/data_label"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginStart="25dp"
android:padding="10dip"
android:text="@string/Language"
android:textColor="#ffffff"
android:textSize="25sp"
android:textStyle="bold"/>
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
<RadioGroup
android:id="@+id/radio_group"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:orientation="horizontal"
android:paddingLeft="30dp"
android:paddingRight="30dp">
<RadioButton android:id="@+id/english"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#670000"
android:text="@string/English"
android:textSize="40dp"/>
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:orientation="horizontal"
android:paddingLeft="30dp"
android:paddingRight="30dp">
<RadioButton android:id="@+id/portuguese"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#670000"
android:text="@string/Portuguese"
android:textSize="40dp"/>
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:orientation="horizontal"
android:paddingLeft="30dp"
android:paddingRight="30dp">
<RadioButton android:id="@+id/spanish"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#670000"
android:text="@string/Spanish"
android:textSize="40dp"/>
</LinearLayout>
</RadioGroup>
</LinearLayout>
Thanks A.Omar! Я сделал то, что вы сказали, но я все еще не могу войти в слушателя. Это моя проблема! –
Добро пожаловать! Странно, действительно ... Код выше всего, что у вас есть? –
Я добавляю свой XML-файл в сообщение. Может быть, проблема исходит отсюда –