2012-04-18 3 views
1

Я создаю popupwindow, как показано ниже,popupwindow: окно получить утечку на задней кнопке

@Override 
public void onBackPressed() { 
    // TODO Auto-generated method stub 
    super.onBackPressed(); 
     LinearLayout linearLayout = new LinearLayout(TimerGameActivity.this); 
     TextView textView = new TextView(TimerGameActivity.this); 
     textView.setText("Quit? Score will be lost...."); 
     linearLayout.addView(textView); 
     PopupWindow popupWindow = new PopupWindow(linearLayout, 200, 100,true); 
     popupWindow.showAtLocation(linearLayout, Gravity.BOTTOM, 10, 10) 
} 

Но я перед проблемой, как показано ниже. Это не позволяет мне показать popupwindow и уничтожает активность, когда я нажимаю кнопку назад, он дает мне следующую ошибку:

04-18 15:04:55.457: E/WindowManager(590): Activity has leaked window [email protected] that was originally added here 

Помощь меня. Благодаря

ответ

1

onBackPressed() будет собирается уничтожить вашу деятельность и в то же время вы делаете работу пользовательского интерфейса с учетом той же деятельности, так как он будет работать?

ссылка Which actions does the back button/back key on Android trigger?

+0

Вы правы .... – AndroGeek

2

Очевидно, чтобы получить исключение там, потому что, когда вы нажимаете кнопку назад super.onBackPressed(); запускаемая и ваша активность будет получить отделку и в то же время вы пытаетесь показать PopupWindow. Таким образом, для PopupWindow не будет отображаться пользовательский интерфейс. Итак, просто удалите super.onBackPressed(); и попробуйте показать PopupWindow.

+0

Yah ..... это правда ... – AndroGeek

Смежные вопросы