В методе onCreate() моей основной Activity я настраиваю обратный вызов метода onCancel() Activity, который будет вызываться (я полагаю), когда диалоговое окно поиска отменяется пользователем без выполнения поиска. Вот мой регистрационный код:
SearchManager searchManager = (SearchManager) getApplicationContext().getSystemService(Context.SEARCH_SERVICE);
searchManager.setOnCancelListener(this);
Моя активность реализует SearchManger.OnCancelListener, и мой метод onCancel() в настоящее время является оператором Log.d(). Однако всякий раз, когда я отменяю диалоговое окно поиска (например, с помощью кнопки «Назад»), этот метод никогда не вызывается.
Чтобы было ясно, функция поиска работает просто отлично при выполнении. Мне просто нужно уведомление, когда пользователь отменил диалоговое окно поиска, чтобы я мог принять меры. Кроме того, я использую стандартное диалоговое окно поиска Android, которое появляется в верхней части экрана по запросу.
Есть ли какая-то конфигурация, которая мне нужна, например. грамм. в AndroidManifest.xml для поддержки этого обратного вызова? Или я просто пропустил/делаю что-то глупое (вполне возможно)?