Активити и данные из Диалога

Activity Lifecycle, Saving Activity State, Managing Tasks, Intent, Intent Filter
Ответить
Аватара пользователя
neoksi
Сообщения: 712
Зарегистрирован: 26 июл 2012, 10:42
Контактная информация:

Активити и данные из Диалога

Сообщение neoksi » 24 авг 2012, 08:59

Привет Всем!

Вот задался тут вопросом, как правильно реализовать передачу данных из вызываемого диалога в активити, которая его вызвала?
Диалог может быть вызван любой активити приложения.

Аватара пользователя
neoksi
Сообщения: 712
Зарегистрирован: 26 июл 2012, 10:42
Контактная информация:

Re: Активити и данные из Диалога

Сообщение neoksi » 24 авг 2012, 09:44

Вопрос отпал, реализовал через отдельный интерфейс в моем диалоге.

vadimled
Сообщения: 2
Зарегистрирован: 13 окт 2012, 19:11

Re: Активити и данные из Диалога

Сообщение vadimled » 03 ноя 2012, 22:51

У вас то он отпал а я так и не понял. Может поделитесь кодом?

Аватара пользователя
neoksi
Сообщения: 712
Зарегистрирован: 26 июл 2012, 10:42
Контактная информация:

Re: Активити и данные из Диалога

Сообщение neoksi » 04 ноя 2012, 23:38

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));
	                    }
Как-то так...

vadimled
Сообщения: 2
Зарегистрирован: 13 окт 2012, 19:11

Re: Активити и данные из Диалога

Сообщение vadimled » 06 ноя 2012, 21:27

Премного благодарен!

Ответить