Предотвратить скрытие панели поиска - PullRequest
0 голосов
/ 01 мая 2019

В Android Search View не будет скрываться, пока вы не нажмете кнопку закрытия («X»), что имеет смысл

enter image description here

Но в iOS, если вы нажмете где-нибудь (например, в центре экрана), строка поиска скрывается автоматически, а func searchBarCancelButtonClicked(_ searchBar: UISearchBar) даже не вызывается, потому что вы не нажали кнопку отмены, вы просто нажали в другом месте

И результаты этого последнего поиска по-прежнему отображаются, и когда вы снова нажимаете значок элемента поиска, текстовое поле панели поиска становится пустым, и это действительно не имеет смысла

Поэтому я хочу предотвратить скрытие панели поиска до тех пор, пока пользователь не нажмет кнопку отмены (только кнопка отмены должна иметь возможность закрыть панель поиска)

enter image description here

enter image description here

Обновление

Кажется, я нашел решение:

searchController.dimsBackgroundDuringPresentation = false

Но название этого свойства тоже не имеет никакого смысла, потому что речь идет не только о затемнении фона, оно имеет две функции:

  • затемняет фон
  • контролирует, должна ли быть скрыта строка поиска при нажатии какой-либо другой место
...