2014-04-09 3 views
0

Я делаю демонстрацию о ListFragment, но это ошибка. Что я могу сделать? Кто поможет мне это исправить. Учусь Android в месяц, не хороший навыкDemo ListFragment Error

ListFragment.Class

onCreateView{ 
    MenuAdapter adapter = new MenuAdapter(getActivity()); 
    menu = new Menu(R.drawable.ic_home, "Trang Chu"); 
    adapter.add(menu); 
    menu = new Menu(R.drawable.ic_people, "Khuyen Mai"); 
    adapter.add(menu); 
    menu = new Menu(R.drawable.ic_photos, "Cam Nang"); 
    adapter.add(menu); 
    menu = new Menu(R.drawable.ic_communities, "Gan Toi"); 
    adapter.add(menu); 
    menu = new Menu(R.drawable.ic_pages, "Video"); 
    adapter.add(menu); 
    menu = new Menu(R.drawable.ic_whats_hot, "Gioi Thieu RedSun"); 
    adapter.add(menu); 
    setListAdapter(adapter); 
    return inflater.inflate(R.layout.list, null); 
} 

В моем адаптере,

ArrayAdapter<Menu> { 

    Context context; 

    public MenuAdapter(Context context) { 
     super(context, 0); 
     this.context = context; 
    } 

    public View getView(int position, View convertView, ViewGroup parent) { 
     View view = convertView; 
     if (view == null) { 
      view = LayoutInflater.from(getContext()).inflate(
        R.layout.menulist_layout, null); 
     } 

     ImageView icon = (ImageView) view.findViewById(R.id.menuItem); 
     icon.setImageResource(getItem(position).getImageRes()); 
     TextView title = (TextView) view.findViewById(R.id.menuText); 
     title.setText(getItem(position).getTitle()); 

     return view; 
    } 

} 

Я не знал, что ошибка в этом коде.

+0

, что была ошибка? Можете ли вы скомпилировать? – Libin

ответ

0

Основная проблема - это прохождение 0 для идентификатора ресурса в пользовательском классе адаптера.

Вам необходимо пройти действительный идентификатор ресурса раскладкой файла

super(context, 0); 

в

super(context, android.R.layout.simple_list_item_1); // or your own layout for the list item