我为我的活动实现了onBackPressed,它将检查互联网连接但是当我点击平板电脑中的后退按钮时,它什么也没做。我不明白它的原因是什么。可以帮忙吗?
以下是我的代码
if (!cd.isConnectingToInternet()) {
AlertDialog.Builder splash = new AlertDialog.Builder(this);
splash.setIcon(R.drawable.ic_fail)
.setTitle("No Internet Connection")
.setMessage(
"Please check your internet connection and try again.")
.setCancelable(false)
.setPositiveButton("Try again",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
Intent splash = new Intent(
getApplicationContext(),
SplashActivity.class);
startActivity(splash);
finish();
}
})
.setNegativeButton("Wifi Setting",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
startActivity(new Intent(
android.provider.Settings.ACTION_WIFI_SETTINGS));
dialog.cancel();
}
});
AlertDialog alert = splash.create();
alert.show();
} else {
Thread timer = new Thread() {
public void run() {
try {
sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
Intent login = new Intent(getApplicationContext(),
LoginActivity.class);
startActivity(login);
finish();
}
}
};
timer.start();
}
}
public void onRestart() {
super.onRestart();
Intent splash = new Intent(getApplicationContext(),
SplashActivity.class);
startActivity(splash);
}
@Override
public void onBackPressed() {
super.onBackPressed();
finish();
}
答案 0 :(得分:4)
试试这段代码......
@Override
public void onBackPressed()
{
moveTaskToBack(true);
}
答案 1 :(得分:0)
- finish()
是关闭活动的正确方法。
- 但是如果它没有,由于某些原因在System.exit(0)
之后使用finish()
..这个肯定会有用 .. ..我知道它的原油......但是有效...
/////////////////////////////编辑部分///////////// ////////////////////////// 强>
- 会覆盖onKeyDown()
的{{1}}方法。
Activity
答案 2 :(得分:0)
评论,并检查
//super.onBackPressed();
答案 3 :(得分:0)
试试这个:
@Override
public void onBackPressed() {
yourclassname.this.finish();
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(0);
getParent().finish();
}
答案 4 :(得分:0)
试试这个。我认为这对你有用。
@Override
public void onBackPressed() {
//super.onBackPressed();
// finish your Activity
ActivityName.this.finish();
return;
}