2015-01-05 48 views
-1

我想創建3列(所有3列將相同)ListView。所以一列是一個ImageView。爲了填充ListView我有一個包含圖像的數組。列表視圖與3列 - Android

設計應該是這樣的: Layout

要填充的ListView我需要自定義的適配器和自定義佈局。佈局是隻有3圖像與ID-S: ivImage1ivImage2ivImage3

我的自定義適配器:

public class Adapter extends BaseAdapter { 

    private int[] gallery = { 
      R.drawable.cat_321_sofa, 
      R.drawable.cat_corner_sofa, 
      R.drawable.cat_beds, 
      R.drawable.cat_arm_chairs, 
      R.drawable.cat_puff, 
      R.drawable.cat_coffe_table, 
      R.drawable.cat_day_night, 
    }; 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 

     View row; 

     if (convertView == null) { 
      LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      row = inflater.inflate(R.layout.one_gallery_layout, parent, false); 
     } else { 
      row = convertView; 
     } 

     ImageView ivImage1 = (ImageView) row.findViewById(R.id.ivImage1); 
     ImageView ivImage2 = (ImageView) row.findViewById(R.id.ivImage2); 
     ImageView ivImage3 = (ImageView) row.findViewById(R.id.ivImage3); 

     ivImage1.setImageResource(); ?????? 
     ivImage2.setImageResource(); ?????? 
     ivImage3.setImageResource(); ?????? 

     return row; 
    } 

    @Override 
    public int getCount() { 
     return ???????????? 
    } 

    @Override 
    public Object getItem(int position) { 
     return 0; 
    } 

    @Override 
    public long getItemId(int position) { 
     return 0; 
    } 
} 

所以問題是ListView大小,getCount將返回(); ,並把每ImageView

我怎麼能做到這一點,還是有該問題的一些其他的解決辦法圖像.....

+3

這可能是一個GridView嗎? – njzk2

回答

1

您將需要爲使用GridView,或RecyclerView。這兩個組件都將允許您創建多個列,這就是您所需要的。我會建議使用RecyclerView,這是今後支持的控件。

標準ListView僅限於單列。

+0

謝謝,我試圖使用GridView或RecyclerView :) – KiKo