在我的應用程序中,當退出菜單屏幕離開應用程序時,它將重新打開並顯示比主菜單更深的應用程序中的一個視圖。在我的調試器上,它簡單地表示:Android應用程序在「退出」時重新打開
06-08 11:00:53.952: INFO/ActivityManager(120): Displayed activity com.app/mainmenu: 1653 ms (total 1653 ms)
//I press back to leave the app back to the main screen
06-08 11:00:58.112: INFO/ActivityManager(120): Starting activity: Intent { cmp=com.app/gridview (has extras) }
沒有解釋爲什麼它打開該屏幕。
我已經將這種方法(可能是錯誤的技術術語)放在兩個涉及的活動中。
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
super.onBackPressed();
finish();
}
任何想法,爲什麼它可能會這樣做?我曾考慮過插入某種「殺應用」代碼,但我已經讀過,這是不明智的。
更新;感謝inazaruk的建議,我刪除了兩個屏幕上的onBackPressed()覆蓋,它也做了同樣的事情。
如果我在尋找解決方法時使用了錯誤的術語,請有人指教。我喜歡自己解決問題。當我使用關鍵字(鏈接到本文的標籤)時,我得到了大量的留言板給用戶,而不是很多的開發板。 (我扔在字Java和開發者的時候,但是它們產生的結果遠沒有我期待的)
更新2:看起來像我應該看看的東西在這裏引用 How can I programmatically close an application? 我的GridView可以做一些事情錯了。
另一個更新:
<activity android:name=".Menu" android:label="@string/app_name"
android:configChanges="orientation"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".mImageGridview"
android:configChanges="orientation"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="com.hagsvision.mImageGridview" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
可能是 「默認」?
我應該嘗試在夫人「嘿,寶貝,讓我看看你的清單」
解決它,我被錯誤地執行了onTouchListener在主菜單上。當我按下後退按鈕時,它顯然符合「onTouch」的要求,並轉到默認選擇。我改變它來實現一個onClick監聽器,它現在正常工作。
我也從清單中刪除了category.DEFAULT,儘管我不認爲這是問題所在。
它看起來像'onBackPressed'與你所看到的沒有任何關係。嘗試刪除它,看看你是否仍然可以重現這種行爲。 – inazaruk 2011-06-08 09:48:16
向我們展示你的清單,它可能是可能的,gridview正在傾聽它不應該聽的一些意圖。 – Reno 2011-06-08 10:06:22