2015-08-28 61 views
0

我有一个小部件,可以启动两个不同的活动,活动A和活动B,取决于点击哪个热点。我想要的是在启动每个活动时重置回栈。问题如下:回到堆栈问题与小部件

  1. 我点击热点1和发射活动A
  2. 我按Home键
  3. 我点击热点2和发射活动B
  4. 我按后退按钮和而不是要回的家 屏幕,我回去活动A

我启动从插件的活动方式如下:

Intent intent = new Intent(getBaseContext(), ActivityA.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); 
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent); 

有没有解决方案?

回答

0

试试这个;

  • 创建一个全局变量,当每个热点被点击时变化。
  • 改写后退按钮
  • 在后退按钮方法中,创建一个开关,例如,
    • 案例1://返回主菜单等
0

我已经加入Intent.FLAG_ACTIVITY_CLEAR_TASK这两个活动(这是只用在他们一次)解决了这个问题。这很容易解决问题。