ora*_*tis 14 resources android assets
我想使用下面的代码获取我的资源文件夹中的所有图像
private List<String> getImage()
{
/* ???????? */
List<String> it=new ArrayList<String>();
File f=new File("file:///android_asset/");
File[] files=f.listFiles();
Log.d("tag", "??asset??");
/* ???????ArrayList? */
for(int i=0;i<files.length;i++)
{
File file=files[i];
if(getImageFile(file.getPath()))
it.add(file.getPath());
}
return it;
}
private boolean getImageFile(String fName)
{
boolean re;
/* ????? */
String end=fName.substring(fName.lastIndexOf(".")+1,
fName.length()).toLowerCase();
/* ?????????MimeType */
if(end.equals("jpg")||end.equals("gif")||end.equals("png")
||end.equals("jpeg")||end.equals("bmp"))
{
re=true;
}
else
{
re=false;
}
return re;
}
Run Code Online (Sandbox Code Playgroud)
不知怎的,我不确定这个表达方式
File f=new File("file:///android_asset/");
Run Code Online (Sandbox Code Playgroud)
好吧,我知道当你从资源文件夹中读取一个txt文件或html文件时你可以使用它,但是图像也会接受这个吗?
我通过使用下面的代码解决了这个问题
private List<String> getImage() throws IOException
{
AssetManager assetManager = getAssets();
String[] files = assetManager.list("image");
List<String> it=Arrays.asList(files);
return it;
}
Run Code Online (Sandbox Code Playgroud)
如果有人想知道
Hua*_*ang 11
通常,您可以使用AssetManager管理资产文件夹中的文件.在活动中,调用getAssets() 方法以获取AssetManager实例.
编辑:您可以使用AssetManager读取如下图像:
AssetManager am=this.getAssets();
try {
Bitmap bmp=BitmapFactory.decodeStream(am.open("009.gif"));
chosenImageView.setImageBitmap(bmp);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
请注意,BitmapFactory.decodeStream()默认情况下,该方法在UI线程上运行,因此如果图像太大,应用程序将会卡住.在这种情况下,您可以更改samplesize或启动新线程来执行此操作.
| 归档时间: |
|
| 查看次数: |
18588 次 |
| 最近记录: |