我试图在我的项目中使用此示例http://www.androidhive.info/2013/07/android-expandable-list-view-tutorial/。
主要问题是:
我有ListFragment而不是常规的Activity。
我放了几个getActivity().findViewByID
代替findViewByID
,getActivity().getApplicationContext()
代替this
。
应用程序崩溃
// setting list adapter
expListView.setAdapter(listAdapter);
我只是Android开发中的新手。有人可以解释如何为ListFragment修改示例。
答案 0 :(得分:0)
expListView
在您的代码中为空,您需要在onCreateView
上返回的视图才能找到可展开的视图,而不是getActivity()
。
使用如下:
expListView = YourView.findViewById(yourId);
如果这对您没有帮助,请发布logcat错误和片段代码
示例代码:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View test= inflater.inflate(R.layout.testLayout,
container, false);
expListView = test.findViewById(R.id.expanableId);
return test;
}
答案 1 :(得分:0)
尝试以下
在xml中更改ExpandableListView id。
应该像android:id="@+id/lvList"
在java文件中将其作为ExpandableListView expListView = Your_View.findViewById(R.id.lvList);
。