gpt4 book ai didi

java - 尝试从另一个 Activity 调用 Activity 时出现 StackOverflowError

转载 作者:行者123 更新时间:2023-12-02 00:28:10 26 4
gpt4 key购买 nike

我正在尝试开发一个小型应用程序 BusTracker,当您提到往返地点时,它会列出巴士列表。我有一个 frombutton,单击该按钮将调用另一个 Activity (这是一个列表 Activity ),该 Activity 将显示位置列表。我选择一个,该位置将被保存,并且第一个 Activity 中的文本字段将被填充。我在第二个 Activity 的 oncreate 方法中收到 stackOverFlowerror 。谁能给我一个可能的原因吗?

这是我在firstActivity onClick方法中的代码

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

然后在第二个Activity中

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)

最佳答案

你不应该调用this.onCreate(onSavedInstanceState);,而应该调用super.onCreate(onSavedInstanceState);,否则你会陷入无限递归调用create和然后你会得到 STackOverflow。

关于java - 尝试从另一个 Activity 调用 Activity 时出现 StackOverflowError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9651879/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com