2013-08-20 2 views
0
int image[] = {R.drawable.d002_p001,R.drawable.d002_p002,R.drawable.d002_p003, 
        R.drawable.d002_p004,R.drawable.d002_p005,R.drawable.d002_p006}; 
showPhoto(imCurrentPhotoIndex); 


    protected void onSaveInstanceState(Bundle outState) { 
     outState.putInt("photo_index", imCurrentPhotoIndex); 
     super.onSaveInstanceState(outState); 
    } 
    protected void onRestoreInstanceState(Bundle savedInstanceState) { 
     imCurrentPhotoIndex = savedInstanceState.getInt("photo_index"); 
     showPhoto(imCurrentPhotoIndex); 
     super.onRestoreInstanceState(savedInstanceState); 
    } 

    private void showPhoto(int photoIndex) { 
     ImageView imageView = (ImageView) findViewById(R.id.image_view); 
     // imageView.setImageResource(imPhotoIds[photoIndex]); 
     imageView.setImageResource(imPhotoIds[photoIndex]); 

    } 

код выше используется для чтения и отображения изображений из папки с возможностью перемещения. Я хочу читать изображения из папки на карте памяти; что я должен делать?чтение изображений с карты памяти ANDROID

ответ

0

Попробуйте этот код.

File extStore = Environment.getExternalStorageDirectory(); 

и укажите имя папки и имя файла.

/audios/ringtone1.extension

0

Вы должны сначала получить путь изображений. Предполагая, что в вашей папке есть только изображения.

ArrayList<String> thumb = new ArrayList<String>(); 
    File[] listFile; 

    public void getFromSdcard() 
    { 
    File file= new File(android.os.Environment.getExternalStorageDirectory(),"foldername"); 

     if (file.isDirectory()) 
     { 
      listFile = file.listFiles(); 

      for (int i = 0; i < listFile.length; i++) 
      { 
       thumb.add(listFile[i].getAbsolutePath()); 

      } 
     } 
} 

Теперь вы можете использовать дорожку изображений в большом палец.

Не забудьте добавить разрешение на чтение манифеста

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

Чтобы установить его для просмотра изображения

ImageView image=(ImageView)vi.findViewById(R.id.image_view); 
Bitmap b = BitmapFactory.decodeFile(thumb.get(photoIndex).toString); // get the file and decode 
image.setImageBitmap(b); 
1

Вы должны пройти по этой ссылке http://mobile.dzone.com/news/displaying-images-sd-card вы можете сделать это либо usign контента распознаватель или получение abosolute path с использованием getExternalStorageDirectory

+0

Спасибо за ваш +1 Мохаммед Ахмад Осар, поскольку он поможет другим. –

Смежные вопросы