2017-01-27 4 views
0

У меня есть действие, в котором, если я нажму кнопку «ПОКУПАТЬ», он откроет фрагмент (150x150 пикселей), чтобы запросить «количество». Если пользователь нажмет кнопку «Назад», он просто просто закроет фрагмент. Любые идеи о закрытии фрагмента?Как закрыть фрагмент при нажатии кнопки «Назад»?

+0

Какая у вас проблема с обнаружением кнопки «Назад» или удалением фрагмента? Либо у вас не возникнет проблем с поиском десятков примеров на –

+0

Просто для подтверждения. Вы пытаетесь использовать фрагмент для диалогового окна? –

+0

Возможный дубликат кнопки [Назад на кнопку «Фрагмент кнопки Android»] (http://stackoverflow.com/questions/7992216/android-fragment-handle-back-button-press) –

ответ

0

Вам не нужно делать это во фрагменте это слишком много для этого простого использования, я предлагаю вам использовать PopupWindow:

При нажатии на кнопку Buy, вы показать всплывающее окно.

PopupWindow достаточно настраиваемый, чтобы сделать макет, как вы хотите

вот пример: https://android--code.blogspot.com/2016/01/android-popup-window-example.html

+0

Что произойдет, если пользователь нажал кнопку «Назад», пока всплывающее окно все еще открыто? будет ли он автоматически закрываться? –

0

Если вы действительно хотите использовать фрагмент вместо диалога, как предложено и хотите удалить его, сохранить ссылку на при его создании, а затем используйте getFragmentManager().beginTransaction().remove(fragment).commit() (вы также можете удалить detach, если хотите только отделить его от активности, но не полностью уничтожить).

0

Использовать popbackstack при нажатии на активность, переопределяя его.

@Override 
public void onBackPressed() { 
    if (getFragmentManager().getBackStackEntryCount() > 0) { 
     getFragmentManager().popBackStack(); 
    } else { 
     super.onBackPressed(); 
    } 
} 
Смежные вопросы