2011-08-06 76 views
2

由於ActivityGroup以視圖的形式管理活動,所以當我嘗試返回調用ActivityGroup中的Activity Activity的Parent Activity時,onResume()不在調用。OnResume()未按ActivityGroup中的後退按鈕

我試過像這樣調用OnResume()。

((Activity)view.getContext()).onResume(); 

但它不工作,而finish()工作對我來說很好。

((Activity)view.getContext()).finish(); 

所以,我能夠從視圖中獲取Activity,但無法調用onResume(),任何想法都將是可觀的。

回答

2

試試這個,當你使用ActivityGroup按回按鈕。

public void back() 
    { 
    if (arrList.size() > 1) 
     { 
     arrList.remove(arrList.size() - 1); 
     View v = arrList.get(arrList.size() - 1); 

     Activity_name object = ((Activity_name)v.getContext()); 
     object.onResume(); 
     setContentView(v); 
     } 
    else { 
     this.finish(); 
    } 
    } 
0

onResume是當活動進入堆棧頂部時由OS調用的生命週期方法。你不能直接調用它。

+0

據我知道的onResume()得到的調用時,我們返回到它被調用一次後的活動,但在這種情況下的onResume()是沒有得到所謂的,因此,對於這個原因,我不得不直接調用它。 –

+0

它在onCreate()之後被調用,並且在onPause()之後恢復應用程序之後。沒有適合你直接打電話的地方。永遠 – Earl

+0

我不知道你是如何確定它沒有運行,但你不能直接調用它。查看生命週期圖表:http://developer.android.com/reference/android/app/Activity.html –