Question

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

Was it helpful?

Solution

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, ...)

OTHER TIPS

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)

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top