2010-03-29 57 views
0

我很困惑,需要理解我的概念。關於意向的問題,android

在MapsActivity中執行最後一條語句後,調用哪個函數?它是在繼續?並在哪個函數(onResume()?)我應該把getExtra()?

Log.i("onMenuAnimate", "Attempting to animate to:"); 
Intent intent = new Intent(SearchDB.this, MapsActivity.class); 
intent.putExtra("com.gpsdroid.SearchDB.Lat", nameLatitude.getText()); 
intent.putExtra("com.gpsdroid.SearchDB.Long", nameLatitude.getText()); 
SearchDB.this.startActivity(intent); 

回答

1

花一些時間閱讀Activity Life cycle;相信我,它會幫助你很多。

在給定的情況下,當您調用startActivity(..)時,MapsActivity將首先由活動管理器啓動。在活動的生命週期中,只要首次創建活動,就會調用onCreate(..)。所以這可能是您可以調用getExtra()的地方之一。

AFAICT,您可以在任何生命週期方法中調用getIntent.getXXXExtra()。關於選擇哪種生命週期方法的答案取決於正在傳遞什麼以及何時/何時使用信息。

0

在這個語句之後,下一個要被調用的活動。然後每當按下後退按鈕,就會恢復a \ first活動。你想要執行的代碼應該放在onResume的重寫方法中。