我正在尝试通过这样做来创建输入流
InputStream is = (InputStream) getResources().openRawResource(R.drawable.image1);
但是我遇到了关于我的可绘制文件(R.drawable.image1)的错误“原始类型的预期资源”。 image1是一个png,位于我的res / drawable文件夹中。
任何想法???
答案 0 :(得分:34)
@Broatian我目前没有res / raw文件夹。我找到了另一种解决方案:
is = context.getResources().openRawResource(+ R.drawable.image1);
+
显示其他文件夹。谢谢你的帮助!
答案 1 :(得分:5)
如果要使用此方法打开png,则必须将其放在res / raw文件夹中。然后,您将能够使用R.raw.image1。
访问png另一种方法是将其保存在drawable文件夹中,然后将drawable转换为InputStream。见How to read drawable bits as InputStream
我假设您知道如何获取drawable,否则请查看参考资料文档。
答案 2 :(得分:0)
这是因为他们期待一个原始类型资源而你正在传递一个可绘制的类型资源。 在res文件夹中创建一个原始文件夹,然后将您的图像放在原始文件夹中。