Il n'y a probablement pas moyen de cacher la piste; le "slide to unlock" ne se comporte pas comme un UISlider et est probablement un contrôle personnalisé. Vous pouvez être capable de pirater le contrôle de curseur, peut-être en définissant l'opacité faible (0 le rendra caché et il ne recevra pas de touches), mais si vous allez cette route, vous aurez probablement quelque chose après une mise à jour du système d'exploitation. Apple ne se plie pas en arrière pour la compatibilité comme le fait Microsoft.
La bonne façon de faire cela est avec un contrôle personnalisé. Cela peut sembler plus de travail que d'utiliser un UISlider, mais ce n'est pas si vous le comparez à tout le temps que vous avez passé et/ou passerez à pirater un UISlider.
Pour ce faire: sous-classe UIControl. Ecrivez votre propre code de dessin pour le rendre correct (vous pouvez probablement réutiliser une partie de ce que vous faites maintenant). Alors inscrivez-vous pour les événements tactiles pour déplacer la poignée du curseur:
- UIControlEventTouchDown: si elle est sur la poignée, mettre un « mouvement » drapeau
- UIControlEventTouchDragInside: si le drapeau mobile est fixé, déplacez la poignée à la position tactile ; vous pouvez simplement mettre à jour une variable d'instance, appelez setNeedsDisplay pour la dessiner dans la nouvelle position.
- UIControlEventTouchUpInside: si est mis en drapeau en mouvement, et la poignée est à la fin, déverrouiller
Si vous voulez imiter la vraie poignée de déverrouillage, jouer avec elle et voir comment il se comporte. Vous devrez peut-être répondre différemment aux événements (que se passe-t-il si vous faites glisser le curseur hors du chemin du curseur)? Mais vous devriez être capable de comprendre l'essentiel.
Il est contre Human Interface Guidelines d'Apple pour reproduire la diapositive pour déverrouiller l'interface utilisateur. –
@JackLawrence preuve? – aqua