0

こんにちは、sd カードからの画像で GridView をバインドしたいのですが、res/drawable フォルダーにはありませんか? 以下は、res/drawable フォルダー //RICE// の画像を使用しているコードです。

public static int[] mPictureIds_rice = {
            R.drawable.chinese_fried_rice, R.drawable.nasi_goreng };
    public static String[]  mPrice_rice_detl = { "seafood           \tRs. 725\nprawn               \tRs. 675\nfish                   \tRs. 375\nchicken            \tRs. 275\nvegetables\t        Rs. 225\negg                   \tRs. 195",
     "Rs. 375.00" };
    public static String[] mPrice_rice = { "225.00", "375.00" };
    public static String[] mName_rice_detl = { "chinese fried rice (chinese)",
            "nasi goreng (indonesia)" };
    public static String[] mName_rice = { "chinese fried rice",
        "nasi goreng"  };
    public static String[] mName_rice_desc = {
            "Wok tossed rice grains, assortment of vegetarian and non-vegetarian selection",
            "Indonesian style fried rice with assorted seafood,meat and vegetable", };
    public static int[] mVegNon_rice = { R.drawable.vegicon,
            R.drawable.non_veg };
    // //

**以下は私のグリッドビューのコードです**

GridView gridview_rice = (GridView) findViewById(R.id.gridview_beverages);
        gridview_rice.setAdapter(new ImageAdapter(this,
                mPictureIds_rice, mName_rice, mPrice_rice));
        gridview_rice.setOnItemClickListener(new OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View v,
                    final int position, long id) {

                Intent intent1 = new Intent(getApplicationContext(),
                        view_beverages_detail.class);
                intent1.putExtra("position", position);
                intent1.putExtra("Image", mPictureIds_rice);
                intent1.putExtra("ImageName",mName_rice_detl);
                intent1.putExtra("ImageNameShort",mName_rice);
                intent1.putExtra("VegNonVegImage", mVegNon_rice);
                intent1.putExtra("ItemDescription",mName_rice_desc);
                intent1.putExtra("ItemPrice",mPrice_rice);
                startActivity(intent1);
            }
        });

Web サービスから画像を取得し、フォルダーの下の Android デバイスに配置しています。これが、デバイスに保存されている画像からGRIDVIEW をバインドする理由ですか?

4

1 に答える 1

0

abc.png画像をxyzパスに保存すると、絶対パスの例を使用してSDカードから画像を取得できます。画像の絶対パスは次のようになります

String absPathOfImage = Environment.getExternalStorageDirectory()+"/xyz/"+abc.png

または配列リストで置き換えint[] mPictureIds_riceますString[] mPictureIds_rice

public static String[] mPictureIds_rice = {
            abspathOfImg1, R.drawable.nasi_goreng };

また

public static ArrayList<String> mPictureIds_rice = new ArrayList<String>();

SDカードに保存した後、画像の絶対パスを追加します

于 2011-06-23T05:45:19.437 に答える