9
votes

UIViewControlers transitions Effet comme iBooks Réservez l'effet d'ouverture?

Je travaille sur demande qui est un clone des ibooks et depuis 2 jours, j'ai essayé d'animer le flux de couverture de livre comme une application iBook Effectuer.

Ceci est une capture d'écran IBooks, j'ai une étagère de livre exactement comme ceci:

Entrez la description de l'image ici

Lorsque l'utilisateur tire sur n'importe quel livre, je souhaite effectuer une transition d'animation comme celle-ci:

Entrez la description de l'image ici

Entrez la description de l'image ici

Vous pouvez voir la couverture du livre FLIP SUR la VUE GAUCHE ET WHITE est de la nouvelle ViewController, qui permet de charger le contenu du livre.

Quelqu'un peut-il m'aider avec ce problème? Je veux effectuer exactement la même animation. avec deux cartes de vue.


3 commentaires

Question similaire: Stackoverflow.com/ Questions / 8499601 / ...


Merci de réponse, mais probable est une différence entre UIView Animation et UIViewController Animation.


Vous pouvez / seriez probablement implémenter cela comme une SEGUE personnalisée si vous souhaitez transition entre deux contrôleurs d'affichage. Le code serait similaire à la transition entre deux vues. Je crois que la vidéo de la Session WWDC de dernière année pour l'animation Core a eu une SEGUE personnalisée (avec le feu: P) à la fin de la vidéo.


4 Réponses :


0
votes

Je ne suis pas sûr, mais peut-être que vous pouvez essayer UipageViewController, cela vous donnera effet de livre. Voici le lien: http://developer.apple. Com / bibliothèque / iOS / # Documentation / Uikit / Référence / UIPAGEVIEWCONTROLLERCLASSREFERENCLASSREF / UIPAGEVIEWCONTROLLERCLASSREGRATS.HTML


1 commentaires

Merci pour la réponse rapide, mais SIR UIPAGEVIEWCONTROLLER donne votre effet CURL pendant les pages tournantes que j'ai déjà réalisées, ce que je veux, c'est l'effet d'ouverture de la couverture du livre



1
votes

légende: LibraryviewController - The Shelf Thingy avec des livres LISKVIEWCONTROLLER - La vue de la vue où la lecture se produit (voir la dernière image de la question)

permet de dire que la couverture est uiImageView . Utilisation de iOS 5.0+ Vous pouvez ajouter lisantviewcontroller en tant que sous-visView de LibraBryViewController . Ensuite, une des animations est zoomer sur le livre (LetViewController + UiImageView). Je suggère ici d'animer un UIView qui est un conteneur des deux. La seconde Ça bascule la couverture:

uiimageview.transform = cgaffinetransformmake (A, B, C, D, TY); Je pense que A et D devraient être -1 ici Voir plus pour CGAFFILETANSFORME

P.s. Cela semble un problème intéressant. S'il vous plaît laissez-moi savoir si ma méthode suggérée est possible!


0 commentaires

4
votes

Vérifiez-le peut-être B Ceci peut vous aider:

   coverView.layer.anchorPoint=CGPointMake(0, .5);
  coverView.center = CGPointMake(coverView.center.x - coverView.bounds.size.width/2.0f, coverView.center.y);

    NSLog(@"%f",coverView.layer.anchorPoint.y);

    [UIView animateWithDuration:.5 delay:0 options:UIViewAnimationCurveEaseIn  animations:^{
        coverView.transform = CGAffineTransformMakeTranslation(0,0);
        CATransform3D _3Dt = CATransform3DIdentity;
        _3Dt =CATransform3DMakeRotation(3.141f/2.0f,0.0f,-1.0f,0.0f);
        _3Dt.m34 = 0.001f;
        _3Dt.m14 = -0.0015f;
        coverView.layer.transform =_3Dt;
    } completion:^(BOOL finished){
        if (finished) {
            [self animateCurrentViewController];
            [self toolBarAndNavigationBarNeedToShow:YES];
        }
    }];


0 commentaires

5
votes

J'ai code un ibook Open Effect Demo sur github, vous pouvez voir ibooksopen


1 commentaires

Salut Guo, puis-je utiliser votre projet iBooksOpen dans mon application? Je ne trouve pas la licence. Est-ce une open source? Merci