对不起我的小问题,但我现在正在搜索几个小时,如果我找不到答案,我会发疯的。
我正在制作一个带有一个MainActivity和多个片段的android工作室应用程序,但我想要的是当用户选择片段并且他们回来时,应用程序保存所选片段并且应用程序在该片段中重新打开,希望我会得到答案或任何帮助。请帮我解决这个问题! (抱歉我的英语不好)
答案 0 :(得分:2)
解决此问题的一种方法是使用SharedPreferences
跟踪最后一个可见Fragment
。
例如,在Activity
onStop()
或onSaveInstanceState(Bundle)
方法中,将当前Fragment
的ID或标记放在{{ 1}}。在SharedPreferences
Activity
方法中,获取您在onCreate()
中放置的Fragment
的ID或代码首选项。如果该值不为null,请使用SharedPreferences
将值与Fragment
ID或标记进行比较,实例化switch-case
,然后将Fragment
添加并提交给{Fragment
1}}。否则,添加并提交您的默认初始FragmentTransaction
。
如果您希望使用Fragment
执行相同的逻辑,则可以创建包含类似逻辑的启动/启动Activities
以获取上次打开的Activity
。
在Activity
文件中:
AndroidManifest.xml
在<activity
android:name=".ui.login.LaunchActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
课程的onCreate()
方法中:
LaunchActivity