返回到First / Main活动而不重新加载它

时间:2012-04-06 10:27:43

标签: android android-intent

我正在开发一个Android应用程序。我需要调用我的MainActivity而不重新加载它,因为它从互联网上获取大量数据。

假设,我现在正处于第三项活动,我想回到MainActivity。

如果我使用:

Intent i = new Intent(Third.this,Main.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);

它将加载MainActivity但我不想重新加载它。比如第二次活动,我打电话给finish(),它确实需要我。

4 个答案:

答案 0 :(得分:14)

这是怎么做的:

Intent i = new Intent(this, MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(i);

答案 1 :(得分:4)

AndroidManifest.xml 文件

中识别它
<activity android:name=".MyActivity"

              android:configChanges="keyboardHidden|orientation">
回到此活动时,

在方法onResume()onstart()内无需执行任何操作

并尝试使用intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);代替addFlags()方法

答案 2 :(得分:0)

在第三项活动中,当您想要进行第一项活动时,请将finish()mwthod放在那里。

在第二个活动中,在onCreate()方法之后,put     @覆盖     public void onResume(){         super.onResume();         完();     }

我认为这段代码对您有用,请尝试一下。

答案 3 :(得分:0)

尝试将此添加到您的清单中:

                  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>