I get the following Android exception when I try to open a dialog. Can someone please help me understand what is going on and how can I fix this problem?
and
I got the same exception. what i do to fix this is to pass instance of the dialog as parameter into function and use it instead of pass only context then using getContext(). this solution solve my problem, hope it can help
I'm guessing - are you trying to create Dialog with an application context? Something like this:
new Dialog(getApplicationContext());
This is wrong. You need to use an Activity context.
You have to try like:
new Dialog(YourActivity.this);
I'm guessing - are you trying to create Dialog using.
getApplicationContext()
mContext which is passed by activity.
if You displaying dialog non activity class then you have to pass activity as a parameter.
Activity activity=YourActivity.this;
Now it will be work great.
If you find any trouble then let me know.
You can continue to use getApplicationContext()
, but before use, you should add this flag: dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT)
, and the error will not show.
And don't forget to add permission:
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
Use this and context not worked for me..but MyActivityName.this worked. Hope this helps anyone who need it.