2016-04-14 5 views
0

私はシンプルなint []で型付きの配列を使っていろいろ試しましたが、型付きの配列は2130837586というリソースIDを与えています。私はgetDrawableを使用しようとした場合、それは、これを与える:私はdrawable配列のためにtypedarrayを実装しようとしています

[email protected] 

私はlogcatでこれらをチェックします。

編集 - ids.getIndexCount()もゼロです。

これは私のコードです。これは私の文字列ここで

 <array name="image_ids"> 
    <item>@drawable/one</item> 
    <item>@drawable/two</item> 
    <item>@drawable/three</item> 
    <item>@drawable/four</item> 
    <item>@drawable/five</item> 
    <item>@drawable/six</item> 
    <item>@drawable/seven</item> 
    <item>@drawable/eight</item> 
    <item>@drawable/nine</item> 
    <item>@drawable/ten</item> 
    <item>@drawable/eleven</item> 
    <item>@drawable/twelve</item> 
</array> 

ある

 GridView gridView = (GridView) findViewById(R.id.grid); 
    gridView.setAdapter(new ImageAdapter(this, getResources().obtainTypedArray((R.array.image_ids)))); 

助けてくださいことは

imgIcon.setImageResource(IDS [位置])このコードを交換して、私のImageAdapter

 public class ImageAdapter extends BaseAdapter { 
private Context mContext; 
TypedArray ids; 

public ImageAdapter(Context con,TypedArray rids){ 
    mContext = con; 
    ids = rids; 
    Log.d("Check this out,",""+ids.getDrawable(0)); 
} 

@Override 
public int getCount() { 
    return ids.getIndexCount(); 
} 

@Override 
public Object getItem(int position) { 
    return ids.getDrawable(position); 
} 

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

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

    if (convertView == null) { 
     imageView = new ImageView(mContext); 
     imageView.setLayoutParams(new GridView.LayoutParams(180, 180)); 
     imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); 
     imageView.setPadding(8, 8, 8, 8); 
    } 
    else 
    { 
     imageView = (ImageView) convertView; 
    } 
    imageView.setBackgroundResource(ids.getResourceId(position,-1)); 

    return imageView; 
} 
} 
+0

ImageAdapterコードを共有できますか? –

+0

@SuryaPrakashKushawah私の質問が更新されました。 –

+0

ids配列数がゼロの場合、問題はリソースから配列をロードすることです... – Nanoc

答えて

0

です。