我想在不知道文件名的情况下将所有图像加载到文件夹中,并在运行时将它们存储到整数向量中。
实际上,我需要和本例中的相同: http://developer.android.com/resources/tutorials/views/hello-gridview.html 但是在运行时并且不知道文件的名称。
任何帮助?
在你得到答案之后我知道该怎么做......但我不知道如何以与例子相同的方式继续下去:
我如何将图像保存为整数数组而不是可绘制数组或类似?这是我对drawable的尝试:DrawArray [i] = Drawable.createFromPath(fileArray [i] .getPath()); 但我想用整数来完成它以适应上面的链接!
提前致谢
答案 0 :(得分:9)
使用以下主题中的一些代码:
Load and display all the images from a folder
您可以使用标准方式,例如:
// array of supported extensions (use a List if you prefer)
static final String[] EXTENSIONS = new String[]{
"gif", "png", "bmp" // and other formats you need
};
// filter to identify images based on their extensions
static final FilenameFilter IMAGE_FILTER = new FilenameFilter() {
@Override
public boolean accept(final File dir, final String name) {
for (final String ext : EXTENSIONS) {
if (name.endsWith("." + ext)) {
return (true);
}
}
return (false);
}
};
然后使用就是这样:
{
....
File dir = new File(dirPath);
File[] filelist = dir.listFiles(IMAGE_FILTER );
for (File f : filelist)
{ // do your stuff here }
....
}
答案 1 :(得分:5)
要获取特定文件夹的所有文件,请使用File
- 类的list()
-method,其中列出了指定目录的所有文件。
要创建位图(可以绘制),您可以使用BitmapFactory
-class。
之后,您需要创建自己的适配器(如链接教程中所示)以显示您的位图。
答案 2 :(得分:1)
您可以使用File类及其listFiles()方法返回给定位置中所有图像文件的列表。从那里只需获取该列表并从那里构建适配器。