我使用了ListFragment,因为我使用了以下代码
public class TestListFragment extends ListFragment {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),R.layout.list_column,
R.layout.list_column, R.id.text, createDataList(1000));
setListAdapter(adapter);
}
}
但我陷入了构造函数ArrayAdapter(FragmentActivity,int,int,int,List)未定义的地方
我搜索了它并发现了Getting a constructor error with ArrayAdapter in a ListFragment on Android同样的问题,因为它暗示我使用getActivity()并且我已经使用了它但仍然是eclipse不允许我
答案 0 :(得分:2)
没有像
这样的构造函数ArrayAdapter<String>(FragmentActivity, int, int, int, List<String>)
您应该像这样实例化:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity(),R.layout.list_column, R.id.text, createDataList(1000));
您可以查看official docs site上提供的构造函数。
答案 1 :(得分:1)
如果您使用的是Sherlock片段...那么请使用getSherlockActivity();
而不是getActivity()