检查drawable时,file.exists()总是false

时间:2011-08-24 21:28:30

标签: android file drawable

我几乎花了一整天的时间来找到解决以下问题的方法:

Uri uri = Uri.parse("android.resource://de.test.app/" + R.drawable.ic_tab_artists_grey);
    File file2 = new File(uri.getPath());
    Boolean fileexists = file2.exists();

fileexists永远不会将值重新设置为true。有什么错吗?

祝你好运

大力士


首先感谢您的快速回答,

我的问题是以下代码

Intent myIntent = new Intent(android.content.Intent.ACTION_VIEW);
            myIntent.setData(Uri.parse("android.resource://de.test.app/" + R.drawable.ic_tab_artists_grey));
            myIntent.setType("image/png");
            startActivityForResult(myIntent, 1);

创建错误:

Unable to start Activity ComponentInfo{com.android.gallery/com.android.camera.ViewImage}: java.lang.nullPointerException

我认为会发生这种情况,因为文件不存在。我的setData路径错了吗?

1 个答案:

答案 0 :(得分:1)

搜索文件时,无法使用R.java文件中的ID。 R.drawable.ic_tab_artists_grey只是表示drawable索引的数字的android常量,不是文件名。

在任何情况下,您都不需要检查是否存在drawable。您的drawable目录中包含的任何内容都将与APK中的应用程序一起加载。