2012-03-11 41 views
0

我正在嘗試開發一個小應用程序BusTracker,它會在您提及從地點和地點時列出總線列表。 我有一個從按鈕,當點擊將調用另一個活動(這是一個列表活動),將顯示一個地方的列表。我選擇一個,然後將這個地方保存起來,第一個活動中的文本框會被填充。我在第二個活動的oncreate方法中遇到了stackOverFlowerror。任何人都可以給我一個可能的原因嗎?當試圖從另一個調用活動時獲取StackOverflowError

這是我在firstActivity的onClick方法的代碼

case R.id.from_button: 
Intent i= new Intent(this,PlacesActivity.class); 
startActivity(i); 
String ss=PlacesActivity.getPlace(); 

然後在secondActivity

this.onCreate(onSavedInstanceState); 
    setContentView(R.layout.places); 
    ListView placesList=(ListView)this.findViewById(R.layout.places); 

    placesList.setVisibility(View.VISIBLE); 
    placesList.setAdapter(new ArrayAdapter(this,R.array.fromArray)); 
    placesList.setChoiceMode(ListView.CHOICE_MODE_SINGLE); 
    //placesList.setOnItemClickListener(this); 

} 

public void onListItemClick(ListView l, View v, int position, long id) 
{ 
    Object o=this.getListAdapter().getItem(position); 
    String s=o.toString(); 
    place=s; 
    System.out.println("sssssssssssss"+s); 
} 

錯誤,我得到:

03-10 18:02:46.352: E/AndroidRuntime(542): FATAL EXCEPTION: main 
03-10 18:02:46.352: E/AndroidRuntime(542): java.lang.StackOverflowError 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
03-10 18:02:46.352: E/AndroidRuntime(542): at com.example.BusTracker.PlacesActivity.onCreate(PlacesActivity.java:17) 
+1

如果您發佈一些代碼,它會有所幫助... – fbernardo 2012-03-11 02:24:35

+0

除了發佈代碼之外,您可能還會包含實際的異常,它顯示調用堆棧在發生時的情況 - 此處可能與此高度相關。 – mah 2012-03-11 02:34:29

回答

3

你不應該叫this.onCreate(onSavedInstanceState);,但super.onCreate(onSavedInstanceState);否則,你正處於調用cre的無窮遞歸中吃了,然後你得到了STackOverflow。

+0

感謝您的及時幫助! – user1261376 2012-03-11 02:52:04

相關問題