我正在开发一个Android应用程序。 我需要调用我的MainActivity无需重新加载它,因为它有大量的数据从互联网上获取。
假如,我是在第三个活动开始了,我想回去MainActivity。
如果我使用:
Intent i = new Intent(Third.this,Main.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
它会加载MainActivity但我不想重新加载它。 像第二个活动我呼吁finish()
它不正是想我需要的。
metntion它在你的AndroidManifest.xml文件
<activity android:name=".MyActivity"
android:configChanges="keyboardHidden|orientation">
做的方法里面没有onResume()
和onstart()
回来这个活动时
并尝试intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
代替addFlags()
方法
这是如何做到这一点:
Intent i = new Intent(this, MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(i);
在当你想要去的第一项活动三活动,把完成()mwthod那里。
在第二活动,onCreate()方法之后,放@覆盖公共无效的onResume(){super.onResume(); finish(); 完(); } }
我觉得这段代码会为你工作,绝对尝试。
尝试添加给你的清单:
android:configChanges="keyboard|keyboardHidden|orientation">
该行添加到您的清单这样的活动:
<activity android:name=".Main"
android:label="@string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>