昨天按照在activity中的方法使用listview结果一直报错,今天参考了某高人博客后发现fragment中使用listview和activity中是不一样的。 (参考博客:http://qurtyy.blog.163.com/blog/static/574436812013112543231523/)


在Fragment的布局中必须包含id "@android:id/list"(在代码中则是list)的Listview。

fragement要extend  ListFragment而不是fragment。

只能使用SimpleAdapter或者SimpleCursorAdapter作为适配器。

直接使用ListFragment的setListAdapter()来设置适配器。


上代码


fragement部分:

me.xml:

<?xml version="1.0" encoding="utf-8"?>        listitem部分:me_function_item.xml:<?xml version="1.0" encoding="utf-8"?>        


fragement.java部分: 注意oncreate和oncreateview的区别

public class MeFragment extends ListFragment {private ListView list;private SimpleAdapter adapter;@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {View view = inflater.inflate(R.layout.me, container, false);list = (ListView) view.findViewById(android.R.id.list);return view;}@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);String[] listItem = { "a", "b", "c", "d", "e" };int[] iconItem = { R.drawable.ic_launcher, R.drawable.ic_launcher,R.drawable.ic_launcher, R.drawable.ic_launcher,R.drawable.ic_launcher };adapter = new SimpleAdapter(getActivity(), getData(listItem, iconItem),R.layout.me_function_item, new String[] { "name", "icon" },new int[] { R.id.functionName, R.id.functionIcon });setListAdapter(adapter);}@Overridepublic void onListItemClick(ListView l, View v, int position, long id) {super.onListItemClick(l, v, position, id);}private List<? extends Map> getData(String[] strs, int[] icon) {List> list = new ArrayList>();for (int i = 0; i < 5; i++) {Map map = new HashMap();map.put("name", strs[i]);map.put("icon", icon[i]);list.add(map);}return list;}@Overridepublic void onActivityCreated(Bundle savedInstanceState) {super.onActivityCreated(savedInstanceState);}@Overridepublic void onAttach(Activity activity) {super.onAttach(activity);}}


    

更多相关文章

  1. android音乐播放器例子及其源码分析
  2. Android(安卓)Studio报错:unable to find valid certification pa
  3. android学习摘记——TabHost使用代码
  4. Android让手机主动亮屏的代码
  5. 如何在代码中动态设置字体大小
  6. Android笔记使用Jsoup解析Html
  7. 用cmake生成ios framework库
  8. Android(安卓)opengl es 2.0怎么学习
  9. Android控件(View)之TextView, Button, ImageButton, ImageView,

随机推荐

  1. android 应用界面主题
  2. android:gravity / android:layout_Gravi
  3. Android(安卓)系统自带样式Android:theme
  4. Android(安卓)SDK Android(安卓)NDK 官方
  5. 【Android】自带Theme
  6. Android系统自带样式(android:theme)
  7. Android的设计模式-建造者模式
  8. Android(安卓)系统自带样式Android:theme
  9. [Android]Android高级UI开发系列教程(三) -
  10. android:style/Theme