2015-04-29 26 views
1

請幫我解決這個問題。我正在做一個抽屜我的應用程序,我從ADT接收這些錯誤:構造函數Object(Context,int,List <DrawerItem>)未定義

  • 構造對象(背景下,INT,列表)是未定義

  • 的方法getView(INT,查看,類型CustomDrawerAdapter的的ViewGroup) 必須重寫或實現的超類型方法

這是我CustomDrawerAdapter類代碼:

package com.example.ico; 
import java.util.List; 
import android.app.Activity; 
import android.content.Context; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ArrayAdapter; 
import android.widget.ImageView; 
import android.widget.TextView; 

public class CustomDrawerAdapter { 

    Context context; 
    List<DrawerItem> drawerItemList; 
    int layoutResID; 

    public CustomDrawerAdapter(Context context, int layoutResourceID, List<DrawerItem> listItems) { 
     super(context, layoutResourceID, listItems); 
      this.context = context; 
      this.drawerItemList = listItems; 
      this.layoutResID = layoutResourceID; 

    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
      // TODO Auto-generated method stub 

      DrawerItemHolder drawerHolder; 
      View view = convertView; 

      if (view == null) { 
       LayoutInflater inflater = ((Activity) context).getLayoutInflater(); 
       drawerHolder = new DrawerItemHolder(); 

       view = inflater.inflate(layoutResID, parent, false); 
       drawerHolder.ItemName = (TextView) view 
          .findViewById(R.id.drawer_itemName); 
       drawerHolder.icon = (ImageView) view.findViewById(R.id.drawer_icon); 

       view.setTag(drawerHolder); 

      } else { 
       drawerHolder = (DrawerItemHolder) view.getTag(); 

      } 

      DrawerItem dItem = (DrawerItem) this.drawerItemList.get(position); 

      drawerHolder.icon.setImageDrawable(view.getResources().getDrawable(
         dItem.getImgResID())); 
      drawerHolder.ItemName.setText(dItem.getItemName()); 

      return view; 
    } 

    private static class DrawerItemHolder { 
      TextView ItemName; 
      ImageView icon; 
    } 


} 
+1

1 /目前,您從_Object_擴展而來,不是某些具有您嘗試調用的構造函數的類。 2 /很可能你應該擴展的類有一個你可以覆蓋的_getView_方法。 – harism

+0

你應該'擴展ArrayAdapter' – CubeJockey

回答

3

要解決所有問題,您需要讓您的類擴展ArrayAdapter。

public class CustomDrawerAdapter extends ArrayAdapter { 
相關問題