2012-11-13 14 views

risposta

19

Beh, ho trovato questo da qualche parte:

 CATransition *shutterAnimation = [CATransition animation]; 
    [shutterAnimation setDelegate:self]; 
    [shutterAnimation setDuration:0.6]; 

    shutterAnimation.timingFunction = UIViewAnimationCurveEaseInOut; 
    [shutterAnimation setType:@"cameraIris"]; 
    [shutterAnimation setValue:@"cameraIris" forKey:@"cameraIris"]; 
    CALayer *cameraShutter = [[CALayer alloc]init]; 
    [cameraShutter setBounds:CGRectMake(0.0, 0.0, 320.0, 425.0)]; 
    [self.layer addSublayer:cameraShutter]; 
    [self.layer addAnimation:shutterAnimation forKey:@"cameraIris"]; 

E 'l'iPhone di animazione otturatore della fotocamera di default.

+9

E 'un peccato che "cameraIris" non è un valore documentato pubblico per [tipo CATransition]. Qualcuno ha esperienza se questo verrà rifiutato da Apple? – Hailei

+0

Grazie! Questo è esattamente ciò di cui ho bisogno. –

+0

Grazie .. Funziona ... – vipulkumarmehta

2

E in Swift 3.0 ...

let shutterAnimation = CATransition.init() 
shutterAnimation.duration = 0.6 
shutterAnimation.timingFunction = CAMediaTimingFunction.init(name: 
kCAMediaTimingFunctionEaseInEaseOut) 
shutterAnimation.type = "cameraIris" 
shutterAnimation.setValue("cameraIris", forKey: "cameraIris") 

let shutterLayer = CALayer.init() 
shutterLayer.bounds = self.view.bounds 
self.view.layer.addSublayer(shutterLayer) 
self.view.layer.add(shutterAnimation, forKey: "cameraIris") 
Problemi correlati