How to call getWindow() outside an Activity in Android?
I am trying to organize my code and move repetitive functions to a single class. This line of code works fine inside a class that extends activity:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
However it is not working when I try to include it into an external class.
How do I call getWindow() from another class to apply it inside an Activity?
You shall not keep references around as suggested in the accepted answer. This works, but may cause memory leaks.
Use this instead from your view:
((Activity) getContext()).getWindow()...
You have a managed reference to your activity in your view, which you can retrieve using getContext(). Cast it to Activity and use any methods from the activity, such as getWindow().
Pass a reference of the activity when you create the class, and when calling relevant methods and use it.
void someMethodThatUsesActivity(Activity myActivityReference) {
myActivityReference.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}