В MainActivity, когда я нажимаю кнопку DialogFragment
, отображается.
Я хочу отправить данные, которые я получил от DialogFragment
.
DialogFragment
'состоит из RecyclerView
. Каждый предмет состоит из TextView
Мне удалось получить данные. Когда я нажимаю save button
, данные должны быть отправлены в Activity
.
Но я не знаю, как отправить их в Activity.
Intent
должен использовать startAcitivity
, поэтому он не подходит.
Как отправить данные «DialogFragment» в «Активность»?
Простым способом было бы:
Вот и все.
Тоже можно. Определите интерфейс в вашем фрагменте. Затем внедрите его в свою деятельность. Затем, если ваш интерфейс реализован вашей активностью, вам не нужно регистрировать его в своем фрагменте, вы можете получить к нему доступ с помощью ((мой интерфейс)getActivity).myInterfaceMethod(data).
Если ваш реализованный метод является анонимным методом из вашей деятельности, вам придется зарегистрировать его в своем фрагменте. Когда вы создаете свой фрагмент, вы можете передать этот анонимный метод, но вам придется управлять изменением конфигурации (ротацией).
Спасибо. Однако как насчет использования
interface
? Я имею в виду, определить интерфейс в DialogFragment и реализовать метод интерфейса в MainActivity. а затем вызовите реализованный метод. этот способ неэффективен?