从另一个包中获取资源

时间:2014-02-28 15:00:45

标签: android resources package

在src /里面我有以下软件包:com.app.animals,com.app.animals.threads,com.app.animals.games

当我尝试从com.app.animals.games中的一个名为“CarreraJuego.java”的类中获取我的proyect资源(可绘制文件夹)时,它表示'R无法解析为变量'

如何从该包中访问资源文件夹?该类是一个surfaceview

2 个答案:

答案 0 :(得分:5)

以下是一种简单快捷的方法:

try
{
    PackageManager manager = getPackageManager();
    Resources resources = manager.getResourcesForApplication("com.example.packagename");
    int resId = resources.getIdentifier("drawable_id", "drawable", "com.example.packagename");

    Drawable myDrawable = resources.getDrawable(resId);

    // Do something
}
catch (Exception e)
{
    e.printStackTrace();
}

更改com.example.packagename宽度您需要资源的应用包名称。 使用资源ID更改drawable_id。 将drawable更改为您想要的文件夹名称(drawablelayoutvalues,...)

答案 1 :(得分:1)

您需要做的就是在主包之外的包类中导入R.java文件(带有生成的R文件的包)