Страница 1 из 1

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

Добавлено: 24 авг 2012, 08:59
neoksi
Привет Всем!

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

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

Добавлено: 24 авг 2012, 09:44
neoksi
Вопрос отпал, реализовал через отдельный интерфейс в моем диалоге.

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

Добавлено: 03 ноя 2012, 22:51
vadimled
У вас то он отпал а я так и не понял. Может поделитесь кодом?

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

Добавлено: 04 ноя 2012, 23:38
neoksi
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: Активити и данные из Диалога

Добавлено: 06 ноя 2012, 21:27
vadimled
Премного благодарен!