[英]Intent not working. When i click Sign In it is going to MainActivity.java instead of going to Home.java
[英]Home intent launching SettingsActivity instead of MainActivity?
我正在eclipse上的android啟動器上工作,該軟件包包含MainActivity,它是啟動器本身和SettingsActivity。
我的問題是,如果我打開設置頁面,然后轉到其他地方,然后單擊主頁按鈕,便進入設置頁面(而不是直接進入MainActivity),就像它記得我已經打開了設置一樣。
這是摘自AndroidManifest.xml文件:
<!-- Launcher-->
<activity
android:name=".launcher.MainActivity"
android:exported="false"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<!-- Settings -->
<activity
android:name=".launcher.SettingsActivity"
android:label="@string/launcher_settings_name"
android:theme="@style/android:Theme.DeviceDefault" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
您可以看到啟動器響應原始意圖,而SettingsActivity響應來自啟動器的自身意圖。
無論應用程序的上一個活動是否已設置,我如何確保家庭意圖將用戶直接帶到啟動器?
這是因為您已將“設置”活動設置為啟動器。
嘗試這個,
<!-- Launcher-->
<activity
android:name=".launcher.MainActivity"
android:exported="false"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Settings -->
<activity
android:name=".launcher.SettingsActivity"
android:label="@string/launcher_settings_name"
android:theme="@style/android:Theme.DeviceDefault" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
我得到了另一個問題的解決方案:
-
如果您嘗試創建“主頁”屏幕替換,則該活動必須在清單的標記中具有以下內容:
android:launchMode="singleInstance"
這將確保僅存在該活動的一個實例,並確保當該活動啟動其他活動時,它們將全部進入新任務,並且不屬於HOME屏幕替換任務的一部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.