У меня есть MapActivity, который отобразит окно Android Search при нажатии кнопки поиска. SearchManager управляет диалоговым окном и передает запрос пользователя на операцию поиска, которая ищет SQLite DB и отображает результаты с помощью пользовательского адаптера.Android onSearchRequested() обратный вызов вызывающей активности
Это прекрасно работает - и я получаю правильные результаты от отображаемой БД.
Однако, что я хочу сделать, это отобразить результат в MapActivity на карте, когда пользователь нажимает на результат поиска. В настоящее время это означает запуск новой MapActivity, передача результата поиска с использованием Bundle.
Я бы подумал, что более чистым способом было бы вернуть результат поиска к первоначальной деятельности, а не начинать новую. На данный момент мой стек активности идет MapAct -> SearchManager -> Результат поиска -> Новый MapAct. Это означает, что нажатие «назад» из нового MapAct вернется к результатам запроса, а затем к исходному MapAct.
Похоже, что в результате поиска вызов функции finish() не вызывает onActivityResult для вызова в вызывающем MapActivity.
Любые идеи, как получить этот обратный вызов и поддерживать разумный стек действий?