【问题标题】:Android: Populate Gallery With Images from SDCardAndroid:使用来自 SDCard 的图像填充图库
【发布时间】:2012-05-23 22:58:52
【问题描述】:

我正在尝试使用 SD 卡中文件夹中的图像填充图库视图。我在此处阅读了有关 Android Dev 的图库教程:http://developer.android.com/resources/tutorials/views/hello-gallery.html,并且可以使用我项目的可绘制文件夹中的图像。

我的问题是:如何从 Environment.getExternalStorageDirectory()+File.separator+"MyPictureDirectory 文件夹中获取一组文件,然后将它们显示在图库中?谢谢!

【问题讨论】:

    标签: android image file


    【解决方案1】:

    试试下面的,

    File file = new File( Environment.getExternalStorageDirectory()+File.separator+"MyPictureDirectory"+File.separator);
    File imageList[] = file.listFiles();
    for(int i=0;i<imageList.length;i++)
    {
       //Add images in Gallery from imageList
    }
    

    从文件路径设置图片:

    File imgFile = new  File(imagefilepath);
    if(imgFile.exists()){
    
        Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
    
        ImageView myImage = (ImageView) findViewById(R.id.imageviewTest);
        myImage.setImageBitmap(myBitmap);
    
    }
    

    【讨论】:

    • 如何将文件对象设置为 imageview?
    • 我已经尝试了所有可用的方法,但由于位图解码,我的 gridview 仍然滞后
    • @Siddhesh:你有什么错误吗,你的状态是什么 Siddhesh?
    • 没有错误...代码运行完美,但只是网格滞后,因为 getView() 中的cr.moveToPosition(position); int imageID = cr.getInt(columnIndex); Uri uri = Uri.withAppendedPath( MediaStore.Images.Media.EXTERNAL_CONTENT_URI, Integer.toString(imageID) ); String url = uri.toString(); int originalImageId = Integer.parseInt(url.substring(url.lastIndexOf("/") + 1, url.length())); Bitmap b = MediaStore.Images.Thumbnails.getThumbnail(getContentResolver(), originalImageId, MediaStore.Images.Thumbnails.MINI_KIND, null); picturesView.setImageBitmap(b);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-22
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多