Fragment里添加ListView不要用ListFragment
起始的想法是将Fragment和ViewPager结合起来,
然后突发奇想,在第一个Fragment里添加了ListView,
依照网上的建议,extends了ListFragment,接着各种报错。
仔细看了下,原来是MainActivity这里:
//构造适配器 List<Fragment>fragments=newArrayList<Fragment>(); fragments.add(newFragment()); fragments.add(newFragment()); fragments.add(newFragment()); FPAdapteradapter=newFPAdapter(getSupportFragmentManager(),fragments);
因为是
List<Fragment>
Fragment1用ListFragment自然会报错。
修改Fragment1里代码,添加ListView的方法如下:
publicclassFragmentextendsFragment{ privateListViewlistView; publicViewonCreateView(LayoutInflaterinflater,ViewGroupcontainer, BundlesavedInstanceState){ //TODOAuto-generatedmethodstub Viewview=inflater.inflate(R.layout.layout,container,false); listView=(ListView)view.findViewById(R.id.lv); ArrayAdapter<String>arrayAdapter=newArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_,getData()); listView.setAdapter(arrayAdapter); returnview; } privateList<String>getData(){ List<String>data=newArrayList<String>(); for(inti=;i<;i++){ data.add(i+""); } returndata; } }
其中
android.R.layout.simple_list_item_1
是自带的,不用定义。
这样ListView便能正常显示了。
以上就是本文的全部内容,希望大家喜欢。