2015-06-30 38 views
0

我正在創建一個自定義的GridView,並且我需要爲GridView的元素創建一個圖像和一個文本。 我有這個適配器爲GridView,但我解決不了我的錯誤:對於類型ClipData.Item,未定義getImage()方法Java

import java.util.ArrayList; 

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; 

/** 
* 
* @author manish.s 
* 
*/ 
public class CustomGridViewAdapter extends ArrayAdapter<Item> { 
Context context; 
int layoutResourceId; 
ArrayList<Item> data = new ArrayList<Item>(); 

public CustomGridViewAdapter(Context context, int layoutResourceId, 
    ArrayList<Item> data) { 
    super(context, layoutResourceId, data); 
    this.layoutResourceId = layoutResourceId; 
    this.context = context; 
    this.data = data; 
} 

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    View row = convertView; 
    RecordHolder holder = null; 

    if (row == null) { 
    LayoutInflater inflater = ((Activity) context).getLayoutInflater(); 
    row = inflater.inflate(layoutResourceId, parent, false); 

    holder = new RecordHolder(); 
    holder.txtTitle = (TextView) row.findViewById(R.id.item_text); 
    holder.imageItem = (ImageView) row.findViewById(R.id.item_image); 
    row.setTag(holder); 
    } else { 
    holder = (RecordHolder) row.getTag(); 
    } 

    Item item = data.get(position); 
    holder.txtTitle.setText(item.getTitle()); 
    holder.imageItem.setImageBitmap(item.getImage()); 
    return row; 

} 

static class RecordHolder { 
    TextView txtTitle; 
    ImageView imageItem; 

} 
} 

我的錯誤是在這裏:

holder.txtTitle.setText(item.getTitle()); 
holder.imageItem.setImageBitmap(item.getImage()); 

它說:該方法item.getTitle(和也item.getImage)是未定義的類型ClipData.Item

我缺少什麼?

回答

0

錯誤非常具體:您使用的方法沒有爲ClipData.Item定義。

對於文本嘗試使用:

holder.txtTitle.setText(item.getText()); 

對於這真的取決於你建立你的項目的方式形象。

+0

我的項目是這樣的: 'gridArray.add(new Item(homeIcon,「Home」));'基本上是一個文本和圖像,問題是我沒有創建一個Item類,我需要這樣做才能定製它? – Signo

+0

這可能是一個快速和很好的解決方案。您也可以創建2個數組,1個字符串和一個Drawable,並將其傳遞給適配器 – yshahak

相關問題