首先让我说,我希望东海岸的每个人在飓风桑迪之后都没事。我很幸运,虽然我住在纽约市,但我从未失去过权力。我的想法传达给那些没有那么幸运的人。三天后我要回去工作了,我需要一些碎片方面的帮助。我正在尝试将 Bundle 传递给 Fragment,但它不起作用。我知道我的一般片段设置正确,因为如果我不尝试传递 Bundle,它工作正常。所以这是我传递捆绑包的活动:
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
Intent choice = new Intent(getApplicationContext(), com.MyProject.project.MyList.class);
Bundle dataBundle = new Bundle();
String chosenValue = values[position];
dataBundle.putString("Level",chosenValue);
choice.putExtras(dataBundle);
startActivity(choice); }
现在这是我没有 Bundle 的活动。这工作正常:
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
String[] values = new String[] { "Enterprise", "Star Trek", "Next Generation", "Deep Space 9", "Voyager"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
但是,当我尝试从 Bundle 中获取信息时,它不起作用。这是我的代码:
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Bundle info = getArguments();
String level = info.getString("level");
String[] values = new String[] {level, level};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
}
当我运行它并在我的活动中单击我的选择时,应用程序就会挂起。LogCat 似乎没有给我太多这方面的信息。有人在这里看到任何问题吗?
谢谢!