2016-07-17 15 views
0

私は(画像の表示のみを含有する)以下の私のコードは私のカスタムアダプタで私のリストビューにロードするために、いくつかの画像を持っている ArrayAdapterロードしていない画像が

public class menuadapter extends ArrayAdapter<Integer> { 

    int[]images; 
    Context context; 

    public menuadapter(Context context, int[] imgs) { 
     super(context,R.layout.menurow, imgs); 

     this.context=context; 
     this.images=imgs; 
    } 

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

     LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View row = inflater.inflate(R.layout.menurow,parent,false); 
     ImageView menuimg = (ImageView) row.findViewById(R.id.menuimg); 
     menuimg.setImageResource(images[position]); 
     return row; 
    } 
} 

と主な活動

int[] images={R.mipmap.coding,R.mipmap.newsfeed,R.mipmap.comm,R.mipmap.contactus}; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    ListView menulist = (ListView) findViewById(R.id.mainmenu); 
    menuadapter menuadapter = new menuadapter(this,images); 
    menulist.setAdapter(menuadapter); 
} 

ため

私はアプリを実行すると、何も表示されません:)しかし、私はアダプタに文字列配列を追加するとうまくいくのですか?任意の助けが大いに評価されるでしょう

+0

画像読み込みライブラリを使用して画像を読み込みます。ピカソやグライドなど –

答えて

0

あなたはこのようにしなければなりません、私はそれがうまく動作することを確認しました。

どのようにセットアダプタ

Integer[] images={R.mipmap.coding,R.mipmap.newsfeed,R.mipmap.comm,R.mipmap.contactus}; 
ListView menulist = (ListView) findViewById(R.id.mainmenu); 
menuadapter menuadapter = new menuadapter(this, R.layout.menurow, images); 
menulist.setAdapter(menuadapter); 

menuadapter.java

public class menuadapter extends ArrayAdapter<Integer> { 

     private Integer[] images; 

     public menuadapter(Context context, int resource, Integer[] objects) { 
      super(context, resource, objects); 

      images = objects; 
     } 

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

      LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      View row = inflater.inflate(R.layout.menurow,parent,false); 
      ImageView menuimg = (ImageView) row.findViewById(R.id.menuimg); 
      menuimg.setImageResource(images[position]); 
      return row; 
     } 
    } 

が、これはあなたを助けることを願っています。

関連する問題