2014-02-25 11 views
0

我在這裏有點困惑。我有一個帶有片段的導航抽屜,用於我的谷歌地圖頁面。這個想法是他們點擊一個標記,他們看到一個按鈕,將他們帶到一個新的活動。通過主頁按鈕關閉應用程序,我希望它返回頁面並刷新頁面,這有可能嗎?

我要的是爲用戶再次看到地圖頁面,如果他們退出通過主頁按鈕的應用程序,並刷新它,當他們返回到應用程序。那可能嗎?

在活動中調用onStop();不帶我回片段,但地圖不會刷新。我在onStop();中撥打finish();,這樣背後的地圖頁是最新的。

有沒有一種方法,我很想念,讓我刷新其內的地圖嗎?我有一種方法可以拉動標記,當地圖加載時不會有什麼。但當然這需要回到我所在的位置。我想打電話給refreshMap();方法。

也許cheaty方式。我在onCreateOptionsMenu中有一個刷新按鈕,所以也許只是像onKeyDown這樣的強制後退按鈕,也許我們可以強制點擊該按鈕?猜猜這只是硬件按鈕。

希望有人能指導我正確的方向。刷新很重要,因爲否則用戶可以從幾小時前點擊過期的標記並仍然可以獲得報價。

感謝給予任何幫助,真的很感謝!

回答

0
private static boolean homeClick = false; 

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if ((keyCode == KeyEvent.KEYCODE_HOME)) { 
    homeClick = true; 
} 
return super.onKeyDown(keyCode, event); 
} 

檢查的HomeClick已經點擊了,如果這樣的話,我們完成當前活動並返回到最後

確保第一個活動(一個與地圖仍處於活動狀態,如果不作出之前完成意圖()

@Override 
protected void onResume() { 


    if (homeClick) { 
    homeClick = false; 
    finish(); 
} 
    super.onResume(); 
} 
+0

因此,第一位進入活動中,我是否在onStop中調用它,然後才關閉它?哦,堅持下去,他們都參加了活動? –

+0

這不會讓我更新地圖,因爲該調用位於地圖片段中。它會讓我進入地圖頁面。我最後一次嘗試這個,它創建了一個新的地圖實例,我會嘗試使用Intent –

0

我覺得跟這樣的onResume()的作品在地圖頁面上,我不應該刷新。一個剛剛做了檢查,他們去活動之前,以確保它沒有過期。我應該回到頁面並告訴他們已經過期了。

它只刷新地圖,如果地圖爲空。如果我改變它,再次使用應用程序時,你會被卡在循環中,因爲onResume會調用它。

相關問題