如何防止活动重新启动"自动?

时间:2017-07-18 04:50:13

标签: android android-activity

我是Android的新手,非常感谢任何帮助

我的应用上有几项活动。从启动画面我启动我的主要活动(ChooseActivity)。在ChooseActivity中,我有2个按钮来启动2个不同的活动(A和B)。问题是当我在活动A或B时,应用程序进行重新启动" /或随机地(有些时间在几秒,有时几分钟)带来活动ChooseActivity。我想阻止这个,我只想在我想要的时候返回ChooseActivity(例如按屏幕上的按钮)

活动A或B显示一些弹出窗口,我可以通过按下电话的后退按钮从屏幕上的按钮关闭,但是激活A或B无法关闭按下电话的后退按钮(我已禁用此功能)选项)

我已尝试过在不同主题中提出的选项,但没有结果

这是我的清单:

<activity
  android:name=".SplashScreen"
  android:launchMode="singleInstance"
  android:screenOrientation="portrait">
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>
<activity
  android:name=".A"
  android:launchMode="singleInstance"
  android:screenOrientation="portrait">
</activity>
<activity
  android:name=".B"
  android:launchMode="singleInstance"
  android:screenOrientation="portrait">
</activity>

从SplashScreen打开ChooseActivity:

public void closeSplash()
{
    Intent i = new Intent();
    i.setClass(getApplicationContext(), ChooseActivity.class);
    startActivity(i);
    finish();
}

从ChooseActivity打开活动:

private void goA()
{
    Intent i = new Intent();
    i.setClass(getApplicationContext(), A.class);
    startActivity(i); 
    finish();       
}

A.java:

...
@Override
public void onBackPressed()
{
}
...

我非常感谢任何帮助或指示

谢谢

1 个答案:

答案 0 :(得分:0)

不要在goA()方法中完成ChooseActivity

private void goA()
{
Intent i = new Intent();
i.setClass(getApplicationContext(), A.class);
startActivity(i); 
 // finish(); its finished ChooseActivity remove it    
}