Getting Resources from another package

走远了吗. 提交于 2020-01-14 05:00:07

问题


Inside src/ I have the following packages:com.app.animals, com.app.animals.threads, com.app.animals.games

When I try to get my proyect resources (drawable folder) from a class called "CarreraJuego.java" inside com.app.animals.games, it says that 'R cannot be resolved to a variable'

How can I access resources folder from that package?The class is a surfaceview


回答1:


Here is a simple and quick way to achieve it:

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();
}

Change com.example.packagename width the package name of the app you need the resources. Change drawable_id with the resource Id. Change drawable to the folder name you want (drawable, layout, values, ...)




回答2:


All you need to do is import the R.java file inside the classes of packages outside of the main package (the one with the generated R file)



来源:https://stackoverflow.com/questions/22098596/getting-resources-from-another-package

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!