Вероятно, нет способа скрыть дорожку;«слайд для разблокировки» не ведет себя как UISlider и, вероятно, является пользовательским элементом управления.Вы могли бы иметь возможность взломать ползунок, возможно, установив непрозрачность на низкое значение (0 сделает его скрытым, и он не будет получать прикосновения), но если вы пойдете по этому маршруту, у вас, вероятно, что-то сломается послеОбновление ОС.Apple не наклоняется назад для совместимости, как Microsoft.
Правильный способ сделать это с помощью пользовательского элемента управления.Это может показаться более трудоемким, чем использование UISlider, но это не так, если вы сравните его с тем временем, которое вы потратили и / или потратите на взлом UISlider.
Для этого: подкласс UIControl.Напишите свой собственный код для рисования, чтобы он выглядел правильно (вы, вероятно, можете использовать часть того, что вы делаете сейчас).Затем зарегистрируйтесь для событий касания, чтобы переместить маркер ползунка:
- UIControlEventTouchDown: если он на дескрипторе, установите «движущийся» флаг
- UIControlEventTouchDragInside: если установлен флаг перемещения, переместитеручка в положение касания;вы можете просто обновить переменную экземпляра, вызвать setNeedsDisplay, чтобы нарисовать ее в новой позиции.
- UIControlEventTouchUpInside: если установлен флаг перемещения и дескриптор находится в конце, разблокируйте
Если выхотите имитировать настоящую ручку разблокировки, поиграйте с ней и посмотрите, как она себя ведет.Возможно, вам придется реагировать на события по-разному (что произойдет, если вы перетащите за пределы пути ползунка).Но вы должны быть в состоянии понять суть этого.