【发布时间】:2013-09-20 09:52:45
【问题描述】:
我有一项服务有时会打开我的应用程序,有时会向用户提示主活动提示 Dialog 消息,
用户回答 YES\NO 后,我打电话给finish() 关闭应用程序。
我的问题是当消息显示时,用户回答它并且应用程序被调用到finish() 并且当您查看您之前玩过的recent history 时(例如在三星中,您长按主页按钮)您会看到我的应用程序以及用户启动的其他应用程序。
当你按下它再次打开它时,Dialog 再次显示..
如何在从最近的应用程序启动时显示活动而不显示Dialog
public void dialog_1(){
myDialogViewN = new MyDialogViewNegativeTime(MainActivity.this);
// Setting vibrator
vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
long[] pattern= {100, 1000};
vibrator.vibrate( pattern,0 );
// Setting 2 Dialog Listeners
myDialogViewN.setOnDialogListener(new DialogListener() {
@Override
public void onNegativeClick()
{
// Stopping Vibraror
if (vibrator.hasVibrator()){
vibrator.cancel();
vibrator = null;
}
initialize_DialogToUser(); /// ??
SendDataToService(3); //doesn't want reminder
myDialogViewN.dismissDialog();
waitForDialogAnswer=false;
finish();
}
@Override
public void onPositiveClick()
{
// Stopping Vibrator
if (vibrator.hasVibrator()){
vibrator.cancel();
vibrator = null;
}
initialize_DialogToUser();
SendDataToService(1); //remind!
myDialogViewN.dismissDialog();
squre.setImageResource(R.drawable.triangle_red2);
waitForDialogAnswer=false;
finish();
} });
myDialogViewN.show();
}
@Override public void onDestroy() { super.onDestroy(); // close/stop running application on background int id= android.os.Process.myPid(); android.os.Process.killProcess(id); }
【问题讨论】:
-
进行调试并查看:1-如果“myDialogViewN.dismissDialog()”隐藏您的对话框 2-在恢复活动时不再调用 myDialogViewN.show()
-
我被破解了,用户回答后对话框明显消失(
myDialogViewN.dismissDialog()),但问题仍然存在。每次我从历史应用程序打开应用程序时,都会再次显示对话框 -
如果您从历史记录中打开它,android 似乎会保存此应用程序状态只是。但是如果你一般通过点击图标打开它,这个打开就可以了..
-
好的,你检查了对话框隐藏,但我告诉你的另一个?我已经多次使用对话框,但从未发生过。
-
我也破解了
myDialogViewN.show(),它真的又来电了。
标签: android dialog message android-dialog