2010-11-21 4 views
2

Je veux ce curseur qui permet de déverrouiller l'iPhone dans mon application, mais je reçois ce curseur standard.S'il vous plaît me dire est-il un moyen de changer ce curseur standard ou il y a du code ou de l'interface utilisateur pour obtenir ce curseur qui nous aident à débloquer l'iPhone ...Slider qui aide à débloquer l'iPhone


alors comment pourrais-je obtenir ce curseur, le client est exigeant .... pouvons-nous mettre une image sur curseur standard « slide pour déverrouiller » slider ... quoi

Répondre

7

La réponse courte est que vous devez faire votre propre. La réponse longue est qu'il est possible de personnaliser un UISlider pour le faire ressembler exactement au curseur de verrouillage (ce sera une cause de rejet, donc si vous soumettez le faire paraître modérément différent, même alors Apple peut être difficile sur et peut encore rejeter).

Configurer un UISlider avec 2 images d'arrière-plan, une pour le curseur lorsque celui-ci est dans la position minimum et une pour le curseur lorsque celui-ci est en position maximale, et l'image pour le pouce.

Voici un exemple de configuration

UIImage *minImage = [UIImage imageNamed:@"sliderback_min.png"]; 
UIImage *maxImage = [UIImage imageNamed:@"sliderback_max.png"]; 
UIImage *tumbImage= [UIImage imageNamed:@"slider_thumb.png"]; 

minImage=[minImage stretchableImageWithLeftCapWidth:25.0 topCapHeight:0.0]; 
maxImage=[maxImage stretchableImageWithLeftCapWidth:25.0 topCapHeight:0.0]; 

[lockScreenSlider setMinimumTrackImage:minImage forState:UIControlStateNormal]; 
[lockScreenSlider setMaximumTrackImage:maxImage forState:UIControlStateNormal]; 
[lockScreenSlider setThumbImage:tumbImage forState:UIControlStateNormal]; 

lockScreenSlider.minimumValue = 0.0; 
lockScreenSlider.maximumValue = 100.0; 
lockScreenSlider.continuous = YES; 
lockScreenSlider.value = 10.0; 

Suivant En utilisant la méthode de délégué sliderTouchEnd pour animer le curseur retombant à l'animation minimum lorsque le contact est terminé, mais pas complètement débloqué. Quelque chose comme ceci:

- (IBAction) sliderTouchEnd:(id)sender { 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:0.3]; 
    lockScreenSlider.value = 10.0; 
    [UIView commitAnimations]; 
} 

Vous devez faire vous-même, mais vous obtiendrez un très proche du curseur de l'écran de verrouillage.

+0

incroyable! merci beaucoup pour ça .. – nosuic

0

Si vous voulez dire le curseur "glisser vers déverrouiller", non, il n'y a aucun moyen de le changer.

+0

alors comment puis-je obtenir ce curseur, le client est exigeant .... pouvons-nous mettre une image sur le curseur standard de "glisser pour déverrouiller" curseur ... que dire fabian789 ?? – ManjotSingh