Привет Всем!
Вот задался тут вопросом, как правильно реализовать передачу данных из вызываемого диалога в активити, которая его вызвала?
Диалог может быть вызван любой активити приложения.
Активити и данные из Диалога
Re: Активити и данные из Диалога
Вопрос отпал, реализовал через отдельный интерфейс в моем диалоге.
Re: Активити и данные из Диалога
У вас то он отпал а я так и не понял. Может поделитесь кодом?
Re: Активити и данные из Диалога
vadimled
Сложно так сходу объяснить, но попробую... В своем кастомном диалоге я объявил следующий интерфейс:
Далее при создании диалога в активити, я создаю копию интерфейса и передаю её диалогу:
В нем я переопределяю заложенный метод в интерфейсе.
В самом же диалоге я проверяю, существует ли копия интерфейса и если да, то передаю туда данные пользователя при его действиях:
Как-то так...
Сложно так сходу объяснить, но попробую... В своем кастомном диалоге я объявил следующий интерфейс:
Код: Выделить всё
public interface OnResultListener {
public void onChangeDate(long _ts, String _date);
}
Далее при создании диалога в активити, я создаю копию интерфейса и передаю её диалогу:
Код: Выделить всё
new taCalendarViewer.OnResultListener() {
@Override
public void onChangeDate(long _ts, String _date){
// Тут я что-то делаю с данными и отображаю их уже в моей активити
};
};
В самом же диалоге я проверяю, существует ли копия интерфейса и если да, то передаю туда данные пользователя при его действиях:
Код: Выделить всё
if(ResultListener != null){
ResultListener.onChangeDate(_taCalendar.returnUnixTSById(position), _taCalendar.returnDateById(position));
}
Re: Активити и данные из Диалога
Премного благодарен!