java - 使用资产文件夹中的图像而不是 ListFragment 中的可绘制文件夹
问题描述
我很难弄清楚如何以与可绘制文件夹中相同的方式使用资产文件夹中的图像。我搜索并发现我可以使用 getAssets() 函数,但我不知道如何使用它,我在片段中有服装列表视图。我不想使用可绘制文件夹,因为我的资产包含一些我需要的子文件夹。
这是我到目前为止所做的,但图像来自可绘制文件夹,我想用资产中的那些来替换它们:
public class AfricaFragment extends ListFragment{
private AssetManager assets;
/** An array of items to display in ArrayList */
String android_versions[] = new String[]{
"flag1",
"flag2",
"flag3",
"flag4"
};
Integer[] imgid={
R.drawable.a,
R.drawable.b,
R.drawable.c,
R.drawable.d
};
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
assets = getActivity().getBaseContext().getAssets();
InputStream stream;
CustomListAdapter adapter=new CustomListAdapter(getActivity(), android_versions, imgid);
this.setListAdapter(adapter);
return super.onCreateView(inflater, container, savedInstanceState);
}
@Override
public void onStart() {
super.onStart();
/** Setting the multiselect choice mode for the listview */
getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
}
}
我很感激任何帮助。
解决方案
试试这个代码
public Bitmap getBitmapFromAssets(String fileName) {
AssetManager assetManager = getAssets();
InputStream is = null;
try{
is = assetManager.open(fileName);
}catch(IOException e){
e.printStackTrace();
}
Bitmap bitmap = BitmapFactory.decodeStream(is);
return bitmap;
}
推荐阅读
- google-bigquery - 谷歌云大查询,Github 数据集语法错误
- git - Git 询问 SSH 密钥密码
- html - 像 onclick 一样的火种在具有角度动画的同一个容器上滑动
- python - 由于缺少权限,无法导入 .so 文件:无法从共享对象映射段
- excel - 即使 .count 正确,也无法从 Excel VBA 中的集合中检索特定项目
- rust - 在字符串上创建闭包返回迭代器
- sass - Live Sass 编译器未在输出窗口中显示消息
- flutter - 在 Flutter 中将图像资源转换为 base64
- google-apps-script - 为什么使用任务服务插入新任务时没有设置时间?
- python - 使用 concurrent.futures 上传 200 万个文件(每个大约 30 KB 从 EC2 到 S3),ThreadPool 需要很多时间