У меня есть диалог, который проверяет, включен ли интернет.Если он не включен, я отображаю всплывающее окно, в котором вы можете включить данные или выйти из приложения.Если вы решите включить данные, вы перейдете на страницу настроек для включения данных.Вот проблема: когда вы нажимаете обратно со страницы настроек, диалоговое окно все еще присутствует, оно не закрывается.Вот код:
public void calldialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(
"You need to enable an internet connection in order to use this Chirps:")
.setCancelable(true)
.setPositiveButton("Turn on Data",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Intent newintent = new Intent(
android.provider.Settings.ACTION_WIRELESS_SETTINGS);
newintent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(newintent);
dialog.dismiss();
}
})
.setNegativeButton("Exit",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Main.this.finish();
}
});
builder.show();
}
Когда у меня был только один вариант, диалог функционировал должным образом.Но как только я добавляю второй вариант, кнопка вызывает двойное отображение.Функция проверки интернета, в которой содержится функция calldialog (), вызывается как в oncreate, так и в onresume, что может быть частью проблемы.