创建适配器映像时,无法应用对象中的object()

时间:2015-10-14 12:32:17

标签: android

我正在创建一个适配器映像,我遇到了这两个错误:

这是代码

public class GridViewAdapter {

    private Context mcontext;
    private int layoutResourceId;

    public GridViewAdapter(Context context, int layoutResourceId, ArrayList<Listitem> listitem) {
        super(context, layoutResourceId, listitem);
        this.layoutResourceId = layoutResourceId;
        this.mcontext =context;

    }

这是第二个错误

cannot resolve method getitem()

   ` Listitem item = getItem(position);`

if (row == null) {
            LayoutInflater inflater = LayoutInflater.from(mcontext);
            row = inflater.inflate(layoutResourceId, parent, false);
            holder = new ViewHolder();
            holder.imageTitle = (TextView) row.findViewById(R.id.text);
            holder.imageView = (ImageView) row.findViewById(R.id.imageView);
            row.setTag(holder);
        } else {
            holder = (ViewHolder) row.getTag();
        }
        Listitem item = getItem(position);

2 个答案:

答案 0 :(得分:4)

super尝试调用super class。你没有任何扩展,所以隐含地,你继承自Object,而public class GridViewAdapter { 又没有这样的构造函数(一个带三个参数的构造函数)

更改

public class GridViewAdapter extends ArrayAdapter<ListItem> {

ActiveRecord::ConnectionTimeoutError: could not obtain a database  
connection within 5.000 seconds (waited 5.000 seconds)

答案 1 :(得分:2)

我们知道java中的super正在调用扩展类构造函数,在你的情况下它没有扩展类。 永远记住,如果没有扩展类,则超级调用Object类的no arg构造函数,而对象类没有带三个参数的构造函数。