如何将目录路径传递给BitmapFactory.decodeFile

时间:2011-11-07 05:05:56

标签: android

目前我可以将路径传递给SD卡中的图像。现在我想将一个路径传递给一个文件夹(到相同的函数BitmapFactory.decodeFile(path)),以便可以使用

显示文件夹中的所有图像
image.setImageBitmap(img);

基本上,我想以幻灯片形式一个接一个地显示所选文件夹中的所有图像。关于这个的任何帮助/指示?

2 个答案:

答案 0 :(得分:0)

很难确切地告诉你这里要求的是什么。你问过一个非常笼统的问题。我认为最适合你的是使用Gallery小部件。

答案 1 :(得分:0)

第一步是获取所有图像的URL或路径。我可以想到两种选择。

1)列出您要查找的任何文件夹中的所有文件,并获取正确类型的文件。您可以使用listFiles来获取文件夹中的所有文件:

File files[] = Environment.getExternalStorageDirectory().listFiles();  

和字符串split或substring以获取扩展名

string filename = file[i].getName(); 
int pos = filename.lastIndexOf(".");
string ext = filename.substring(pos);

2)您可以使用内容解析程序直接从Android MediaStore获取图像。该解决方案将更加强大。如果您想使用它,请搜索如何使用MediaStore。

第二步是使用BitmapFactory获取所需的所有位图。是的,您需要为从文件中获取的每个位图调用一次decodeResource。