私の活動では、この方法でインターネット接続をアクティブ化するようにユーザーに提案します。
public static void showNoConnectionDialog(Context ctx1) {
final Context ctx = ctx1;
AlertDialog.Builder builder = new AlertDialog.Builder(ctx);
builder.setCancelable(true);
builder.setMessage("This requires network access. Please, enable your mobile network or Wi-Fi.");
builder.setTitle("No internet connection");
builder.setPositiveButton("Accept", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
ctx.startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
return;
}
});
builder.setOnCancelListener(new DialogInterface.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
return;
}
});
builder.show();
}
それはうまくいきます!問題は、「finish()」があるため、戻るボタンを押してもアクティビティに戻れないことです。onPauseメソッドのメソッド...ユーザーが別の方法でアクティビティを終了した場合は、このfinish()メソッドを保持したいのですが、上記のダイアログでインターネットをアクティブ化するように提案した場合はそうではありません...
どうすればそれができますか?onpauseメソッドにいくつかの条件を設定する必要がありますか、それとも他の方法がありますか?