3
爲什麼成員變量「m_lat」和「m_lng」在「onCreate」和「onClick」調用之間持續存在 ,但getIntent()返回的意圖 ?「活動」類中成員變量的持久性
(我認爲.xml文件是無關緊要的)
代碼如下:
public class MyActivity extends Activity implements OnClickListener {
int m_lat, m_lng;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent i = getIntent();
m_lat = i.getIntExtra("LAT", -1);
m_lng = i.getIntExtra("LNG", -2);
// here, m_lat m_lng have good values
}
@Override
public void onClick(View v) {
Intent oldInt = getIntent();
int new_lat = oldInt.getIntExtra("LAT", 0);
int new_lng = oldInt.getIntExtra("LNG", 0);
// here, m_lat and m_lng are 0, but
// new_lat and new_lng are now valid
}
}
韓國社交協會!
我想你錯過我的觀點。在「onCreate」方法中,類設置了兩個成員變量(m_lat,m_lng)。但是在「onClick」方法中,m_lat和m_lng的值會丟失。我希望m_lat == new_lat和m_lng == new_lng,但事實並非如此。我想知道爲什麼成員變量不會在調用之間持續存在。 – uncle4 2012-03-08 15:50:02
請再次檢查您的代碼或重建您的項目。你可以在你的代碼中的某一點改變m_lat和m_lng的值。我對你提供的代碼沒有任何問題。 – PhatHV 2012-03-09 02:42:28