Возврат элемента списка из диалогового окна поиска в вызывающую деятельность - PullRequest
1 голос
/ 14 мая 2011

Мое приложение должно работать следующим образом:

  1. Упражнение № 1 содержит текстовое поле (EditText) и кнопку.
  2. Если пользователь нажимает кнопку поиска,диалоговое окно открывается через onSearchRequested().
  3. . Это вызывает доступную для поиска активность # 2, которая расширяет ListActivity.Он предоставляет список элементов через setListAdapter().
  4. Если пользователь щелкает элемент списка действий № 2, он передает текст выбранного элемента обратно в блок № 1 и отображает его в текстовом поле.

Пули № 1-3 понятны и работают.Однако я понятия не имею, как реализовать # 4.Я знаю о возможности использования намерений, но это не сработает, если я использую намерение после onSearchRequested().

Спасибо,
Роберт

Ответы [ 3 ]

4 голосов
/ 16 мая 2011

У меня нормально работает следующее решение:
http://blog.dpdearing.com/2011/05/getting-android-to-call-onactivityresult-after-onsearchrequested/

1 голос
/ 14 мая 2011

Я бы просто отправил намерение с выбранным вами элементом в качестве дополнительного (putExtra) на ваш activity#1 (поскольку диалог поиска находится между activity#1 и activity#2, вы не можете использовать startActivityForResult для отправки назадрезультат для activity#1)

Если диалог поиска находится в activity#1, то вы можете использовать startActivityOnResult (спасибо dmon)

0 голосов
/ 14 мая 2011

Простое, быстрое исправление: сохраняйте данные статически и проверяйте, чтобы получить их в onResume () в Упражнении № 1.

...