Home » Android » android – How to access drawable from non activity class

android – How to access drawable from non activity class

Posted by: admin June 15, 2020 Leave a comment

Questions:

I am in a situation where I have to use the drawable folder of my app form a non activity class. I tried using the parent activity with the following code:

ParentActivity pa = new ParentActivity();
Drawable d = pa.getResources()..getDrawable(R.drawable.icon);`

But this returns me a NulLPointerException.
How can I achieve this?

How to&Answers:

Pass the context object as a parameter to the constructor of the non Activity class.

Then use that context object to get the Resources.

Example

public class MyClass {
  Context context;
  public MyClass(Context context) {
      this.context = context;
  }

  public void urMethod() {
    Drawable drawable=context.getResources().getDrawable(R.drawable.icon);
    // use this drawable as u need
  }
}

Answer:

import com.(package-name).R;

then you can access all your drawable e.g R.drawable.icon.