У меня есть два вида деятельности (TextActivity.java
и GrammarActivity.java
), на которых один фрагмент (ChoixLangue.java
) представляет собой группу радиостанций с четырьмя кнопками для выбора языка перевода. Родитель от GrammarActivity
: TextActivity
. Я могу выбрать язык, который я хочу, либо на TextActivity
, либо GrammarActivity
. И я могу изменить его на то, какой бы я ни был. Но если я выбираю язык на TextActivity
, а затем перейти к GrammarActivity
и изменить язык, а затем убитьGrammarActivity
, который берет меня обратно в TextActivity
, он отображает кнопку неправильно радио проверил - предположительно потому, что дисплей TextActivity
не обновлен. Как исправить эту ошибку? Вот часть кода в TextActivity `Обновить отображение активности, когда она снова видна
public class TextActivity extends AppCompatActivity {
public ImageButton monImageBouton;
public Button monBouton;
public TextView monTextView;
public static RadioButton monBoutonRadio;
public static String langueChoisie = "francais";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_text);
// une des solutions pour rendre la zone trado scrollable
TextView myXmlContent = (TextView)findViewById(R.id.zone_trado_scrollable);
myXmlContent.setMovementMethod(new ScrollingMovementMethod());
verifLangue();
playText();
test("button8"); // indique la langue choisie
}
public void verifLangue(){
if(langueChoisie == "english"){
monBoutonRadio = (RadioButton)findViewById(R.id.english);
monBoutonRadio.setChecked(true);
}
else if(langueChoisie == "espanol"){
monBoutonRadio = (RadioButton)findViewById(R.id.espanol);
monBoutonRadio.setChecked(true);
}
else if(langueChoisie == "chinois"){
monBoutonRadio = (RadioButton)findViewById(R.id.chinois);
monBoutonRadio.setChecked(true);
}
else{
monBoutonRadio = (RadioButton)findViewById(R.id.francais);
monBoutonRadio.setChecked(true);
}
}
public void onRadioButtonClicked(View view) {
boolean checked = ((RadioButton) view).isChecked();
// Check which radio button was clicked
switch(view.getId()) {
case R.id.english:
if (checked)
langueChoisie = "english";
break;
case R.id.francais:
if (checked)
langueChoisie = "francais"; // checked et définie a priori
break;
case R.id.espanol:
if (checked)
langueChoisie = "espanol";
break;
case R.id.chinois:
if (checked)
langueChoisie = "chinois";
break;
}
}`
Отправьте свой код. – Rami