简历上的Android启动活动

时间:2017-04-05 14:30:26

标签: android android-activity

在我的申请中,我有5项活动。 ABCDE。活动BCDE扩展了扩展AppCompat的活动A。当应用程序从Android Studio启动时,活动A将启动活动B。通过活动B,用户可以决定要加载CDE的活动。我的代码工作正常,直到用户退出应用程序并决定再次启动它。该应用程序显示活动A,并且不会将用户带到活动B。我希望用户看到活动B。我该如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

您是否尝试重写onResume()方法以显示活动B?

@Override
public void onResume(){
    super.onResume();
    setContentView(R.id.layout_B);
}

答案 1 :(得分:0)

听起来你应该将活动B定义为清单中的启动器,我假设活动A被模板/默认定义为启动器。

<activity name="{Activity B's name}">     
  <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.LAUNCHER" />
   </intent-filter>
</activity>

活动B将是您的应用程序的“根”,此时活动B被添加到堆栈中活动A的顶部。

如果活动A也在进行一系列自举,则需要另一种方法,但需要更多信息。

答案 2 :(得分:0)

如果您希望在应用关闭后保留申请状态,则可能需要使用SharedPreferences

final String CURR_ACTIVITY_KEY = "curr_activity";
int currentActivityKey = 1;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
prefs.edit().putInt(CURR_ACTIVITY_KEY, currentActivityKey).commit();