Приложение для iPhone: возможно ли использовать «двойной» слайдер для выбора ценового диапазона - PullRequest
5 голосов
/ 22 сентября 2008

Я работаю над приложением для iphone (не с веб-приложением) и хочу создать форму, в которой пользователь должен указать диапазон цен. Вместо использования двух текстовых полей я бы предпочел использовать двойной ползунок, чтобы установить минимальную и максимальную цену. Я знаю, что можно использовать простой слайдер (например, управление звуком), но я никогда не видел двойной. Кто-нибудь может помочь?

Ответы [ 3 ]

4 голосов
/ 22 сентября 2008

Это невозможно без создания пользовательского элемента управления. Вам нужно будет наследовать от UIControl или UIView и предоставить собственный метод drawRect. Вам также нужно будет реагировать на события касания и перетаскивания, чтобы обновить состояние элемента управления. Я сам этого не делал, но я был бы готов к довольно значительной работе, чтобы все отвечало и отображалось, как и ожидалось.

Мне любопытно, почему вы должны указывать оба значения на одном слайдере? Почему бы не использовать два ползунка, расположенные рядом или в стеке? Это не потребует больше шагов ввода, чем двойной слайдер, и будет в большей степени соответствовать стандартным рекомендациям по пользовательскому интерфейсу.

0 голосов
/ 08 августа 2010

Я создал такой элемент управления и добавил его в GitHub, так что не стесняйтесь смотреть, и если вам нравится элемент управления, расширьте его и добавьте.

Страница GitHub: http://github.com/doukasd/DoubleSlider

Сообщение в блоге (показывает видео о том, как это работает): http://dev.doukasd.com/2010/08/double-slider/

0 голосов
/ 22 сентября 2008

I думаю, вы можете указать несколько больших пальцев для одного слайдера, если вы подкласс UISlider, по крайней мере, я смутно помню, что это возможно в MacOSX. Но Code Addict прав, вам, вероятно, будет лучше использовать стандартные элементы управления - ползунок с двумя большими пальцами кажется довольно сложным в среде сенсорного экрана.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...