Разработка iPhone: лучший метод, позволяющий пользователю выбрать область поиска - PullRequest
2 голосов
/ 01 мая 2010

Я разрабатываю свое первое приложение для iPhone и хочу, чтобы пользователь мог выбирать область поиска более сложным способом, чем позволяют кнопки «Область».

Приложение связано с винами, и я хочу, чтобы пользователь мог сначала выбрать «цвет» (красный, белый, румяна и т. Д.), А затем выбрать тип / сорт в этой категории. Прямо сейчас я использую кнопки контекста UISearchBar для цветов, и касание кнопки открывает представление с выбором цветов. Это нормально, за исключением того, что после выбора «красной» кнопки я не могу выбрать ее второй раз, чтобы изменить свой выбор типа (например, изменить «Мерло» на «Сирра» и т. Д.). способ сделать это, я готов отказаться от моего метода и начать с нуля.

Спасибо!

Ответы [ 2 ]

1 голос
/ 02 мая 2010

Иногда требуется задать вопрос, чтобы ответ пришел к вам самому. Я поместил следующую строку в метод делегата "viewDidDisappear":

[self.searchDisplayController.searchBar setSelectedScopeButtonIndex: -1];

Что нужно сделать, чтобы установить для активной в данный момент кнопки области «ничего», чтобы при возврате к исходному виду ни одна из кнопок области не была выбрана. Таким образом, вы можете выбрать любой из них, включая тот, который вы выбрали в последний раз. Это именно то, что я хотел сделать.

Я не знаю, является ли это «лучшей практикой», но она послужит.

1 голос
/ 01 мая 2010

Почему вы не можете нажать на нее во второй раз?

Было бы просто использовать стандартную панель с одной кнопкой на выбор (цвет, тип и т. Д.). Когда кнопка нажата, всплывающее окно UIPickerView с возможными значениями. Когда значение выбрано, отобразите его в кнопке.

Если есть только два варианта, вы также можете представить один UIPickerView с двумя сегментами.

...