2010-12-02 128 views

回答

11

您必须将图像放入res/drawable文件夹中。然后,您可以通过以下方式访问它们:R.drawable.name_of_image(对于name_of_image.pngname_of_image.jpg)。

如果要按原始名称访问它们,最好将它们保存在assets文件夹中。然后,您可以通过使用AssetManager访问它们:

AssetManager am = getResources().getAssets(); 
try { 
    InputStream is = am.open("image.png"); 
    // use the input stream as you want 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

如果你想保存一个编程生成的图像,你可以这样做:

try { 
     FileOutputStream out = new FileOutputStream(context.getFilesDir().getAbsolutePath()+"/imagename.png"); 
     bmp.compress(Bitmap.CompressFormat.PNG, 100, out); 
} catch (Exception e) { 
     e.printStackTrace(); 
} 

你不能将它保存到你的项目目录。我建议你阅读关于android包的工作方式的文档,因为它看起来你不明白。

+0

谢谢克里斯蒂安,哦,不。实际上我想将我的图像(通过程序创建)保存到res/drawable目录中。我读了一张图片,提取了像素,然后我操纵了这些像素,现在我想用另一个名字再次保存在这个目录中。这是我的问题,我该如何储存这张新照片? – Hesam 2010-12-02 16:01:11

相关问题