Как добавить узлы в UISlider?

Я хочу добавить маркеры для определенных точек вдоль UISlider. Это будет иметь вид узлов на дорожке ползунка. Когда пользователь нажимает на узел, значение ползунка устанавливается на это значение, и большой палец перемещается в эту точку.

В настоящее время я добавил кнопки изображения над ползунком, но из-за положения z большой палец перемещается под узлами, а не сверху. Узлы должны быть над гусеницей, но под большим пальцем.

Кто-нибудь знает лучший способ добиться этого эффекта?


person ClassicalMuzak    schedule 15.09.2011    source источник


Ответы (3)


Я думаю, что нашел решение. Используйте 2 UI-слайдера. Поместите мой оригинальный слайдер с изображениями пользовательских дорожек вниз. Измените его большой палец на невидимый PNG. А вот кнопки изображения поверх этого ползунка. Затем добавьте второй ползунок с невидимой дорожкой поверх него. Таким образом, дорожка идет от нижнего ползунка, а большой палец — от верхнего.

Теперь следующий вопрос: как лучше всего синхронизировать эти два UISlider? КВО? (Я никогда раньше не пользовался КВО).

Спасибо

person ClassicalMuzak    schedule 16.09.2011
comment
Хотя хакерский, это должно работать. Чтобы синхронизировать ползунки, просто создайте функцию IBAction в методе valueChanged верхнего ползунка и установите значение нижнего ползунка в соответствии с ним. - person Daniel G. Wilson; 17.09.2011

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

person jrturton    schedule 16.09.2011

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

person Daniel G. Wilson    schedule 15.09.2011
comment
К сожалению, узлы не статичны. - person ClassicalMuzak; 16.09.2011