2016-06-14 48 views
0

我生成與所生成的簽名APK Android Studio中的文件的APK,但我有此錯誤:錯誤:這個類應該提供一個默認的構造函數(公共構造不帶參數)可實例]在Android中

Error:Error: This class should provide a default constructor (a public constructor with no arguments) (com.actua.actuaconsultores.actuamindfulness.GridImagenAdaptar) [Instantiatable]

我的課是:

public class GridImagenAdaptar extends BaseAdapter { 

    private final Context mContext; 
    private final ArrayList<ModelImage> mGridItems; 

    public GridImagenAdaptar(Context mContext, ArrayList<ModelImage> mGridItems) { 
     this.mContext = mContext; 
     this.mGridItems = mGridItems; 
    } 

    public int getCount() { 
     return mGridItems.size(); 
    } 

    public Object getItem(int position) { 
     return mGridItems.get(position); 
    } 

    public long getItemId(int position) { 
     return position; 
    } 


    public View getView(int position, View convertView, ViewGroup parent) 
    { 
     if(convertView == null) 
     { // If ReusedView doesn't exist 
      convertView = inflatedViewWithContextInParentView(R.layout.activity_grid_imagen_adaptar, mContext, parent); 

      convertView.setTag("HomeMenuCell"); // Reuse Identifier 
     } 

     fillViewWithItemAtIndex(convertView, position); 

     return convertView; 
    } 

    private View inflatedViewWithContextInParentView(int id, Context context, ViewGroup parentView) 
    { 
     LayoutInflater inflater = (LayoutInflater) context.getSystemService(Service.LAYOUT_INFLATER_SERVICE); 
     View inflatedView = inflater.inflate(id, parentView, false); 
     return inflatedView; 
    } 

    private void fillViewWithItemAtIndex(View reusedView, int index) 
    { 
     ModelImage item = mGridItems.get(index); 
     item.setId(index); 

     TextView title = (TextView) reusedView.findViewById(R.id.title); 
     title.setText(item.title); 

     ImageView picture = (ImageView) reusedView.findViewById(R.id.image); 
     int resourceID = getIDForResourceName(item.imageName); 
     picture.setImageResource(resourceID); 
    } 

    private int getIDForResourceName(String name) 
    { 
     try { 
      Class res = R.drawable.class; 
      Field field = res.getField(name); 
      int drawableId = field.getInt(null); 
      return drawableId; 
     } 
     catch (Exception e) { 
      Log.e("GridItemsAdapter", "Error: Couldn't get a drawable id.", e); 
     } 
     return -1; 
    } 
} 

問題是什麼?

感謝

+3

建議的更改不應該是必需的,這表明有問題。你是否無意中在你的'AndroidManifest.xml'文件中提到這個類? – CommonsWare

+0

不確定getIDForResourceName是什麼,但你不應該需要反射來做到這一點。 –

回答

1

這個錯誤意味着你必須添加:

public GridImagenAdaptar(){} 

你的課,你的構造函數。

+0

非常感謝! – elvega

+0

如果回答了您的問題,我很高興能夠提供幫助。你可以通過接受答案來回報。 – Sunshinator

相關問題