Я получаю это исключение, пытаясь отобразить диалоговое окно в android. Я нашел в некоторых сообщениях, что я должен проверить значениеИсключение BadToken, даже если активность запущена
isFinishing()
, чтобы проверить, будет ли деятельность завершена. Но я всегда получаю значение как «ложное» от этой функции.
Это означает, что деятельность запущена. Но я все еще получаю исключение
android.view.WindowManager$BadTokenException: Unable to add window
Может ли любое тело помочь мне решить эту проблему.
Вот мой код
final Dialog dialog = new Dialog(ThirdTab.this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.alertview);
dialog.setTitle("text");
Button dialogButton = (Button) dialog.findViewById(R.id.dialogButtonOK);
dialogButton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
dialog.dismiss();
}
}
);
runOnUiThread
(
new Runnable()
{
@Override
public void run()
{
// TODO Auto-generated method stub
if(!ThirdTab.this.isFinishing())
{
dialog.show();
}
}
}
);
Опубликуйте код, используемый для отображения Диалога. –
, поскольку вы проверяете, заканчивается ли в потоке. возможно, что, когда поток работает, он держит n, давая false – krishna
@krishna, что мне нужно изменить –