Как получить изображения из папки SDCard - PullRequest
0 голосов
/ 17 февраля 2012

Я могу получить изображения в эмуляторе, но когда я попробовал это на мобильном телефоне, изображения не отображаются, ниже приведен мой код для извлечения изображений, когда я регистрирую cc.getCount() в эмуляторе, он выдает правильный счет, но когдапробовал это на телефоне, он всегда показывает ноль (0).

 String uri = MediaStore.Images.Media.DATA;
        String condition = uri + " like '%/project/images%'";

Cursor cc = this.getContentResolver().query(
                    MediaStore.Images.Media.EXTERNAL_CONTENT_URI, null, condition, null,
                    null);

            if (cc != null) {
                myProgressDialog = new ProgressDialog(PhotosActivity.this);
                myProgressDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
                myProgressDialog.setMessage("Loading....");
                myProgressDialog.show();

                new Thread() {
                    public void run() {
                        try {
                            cc.moveToFirst();
                            mUrls = new Uri[cc.getCount()];
                            strUrls = new String[cc.getCount()];
                            mNames = new String[cc.getCount()];
                            for (int i = 0; i < cc.getCount(); i++) {
                                cc.moveToPosition(i);
                                mUrls[i] = Uri.parse(cc.getString(1));
                                strUrls[i] = cc.getString(1);
                                mNames[i] = cc.getString(3);
                                Log.e("mNames[i]",mNames[i]+":"+cc.getColumnCount()+ " : " +cc.getString(3));
                            }

                        } catch (Exception e) {
                        }
                        myProgressDialog.dismiss();
                    }
                }.start();
            gridview = (GridView) findViewById(R.id.gridview);
            gridview.setAdapter(new ImageAdapter(this));

            gridview.setOnItemClickListener(new OnItemClickListener() {
                public void onItemClick(AdapterView<?> parent, View v,
                        int position, long id) {


                }
            });

            }

1 Ответ

0 голосов
/ 17 февраля 2012

Чувак, перейдите по этой ссылке http://mobile.dzone.com/news/displaying-images-sd-card это хороший пример

...