在不启动新实例的情况下返回MainActivity

时间:2016-03-23 12:41:27

标签: android android-intent android-calendar

你好,我对Andriod相当新。我有三个活动A B C. A是MainActivity B,C是独立活动。我在mainActivity中包含了一个日历,并突出显示了一些日期。

现在通过mainActivity我开始一个新的活动B并使用以下代码返回到A

public void OnClick(View V){
      Intent i= new Intent(getApplicationContext(),A.class);
      i.setFlags(Imtent.FLAG_ACTVITIY_CLEAR_TOP);
      startActivity(i);       
  }

返回mainActivity,但突出显示的日期不存在。我想知道是否创建了一个全新的活动,或者我在突出日期时做错了什么。

2 个答案:

答案 0 :(得分:2)

无需再次启动上一个活动。只要您想关闭当前活动并返回上一个活动,就可以拨打print("insert postcode") inserted_code = input() if (inserted_code[0] > "0" and inserted_code[1-4] >= "0"): print("Estonian postcode") elif (inserted_code[0] == "0"): print("Not an estonian code") else: print("Not an estonian code") 。如果这是BackStack中的最后一个活动,应用程序将关闭。

答案 1 :(得分:2)

您应该在清单中将以下行用于MainActivity:

...
android:launchMode="singleTask"
...

例如:

        <activity
            android:name=".activities.MainActivity"
            android:label="@string/app_name"
            android:launchMode="singleTask"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.nfc.action.NDEF_DISCOVERED" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>