Domanda

Non sono in grado di raggiungere qualsiasi animazione con il seguente codice:

if (self.segmentControl.selectedSegmentIndex == 0) {
    [UIView transitionFromView:tableView
                        toView:mapView
                      duration:1.0
                       options:UIViewAnimationTransitionFlipFromLeft
                    completion:nil
         ];
    }
if (self.segmentControl.selectedSegmentIndex == 1) {
    [UIView transitionFromView:mapView
                        toView:tableView
                      duration:1.0
                       options:UIViewAnimationTransitionFlipFromRight
                    completion:nil
         ];
}

I punti di vista sono in realtà lo swapping, ma solo senza alcuna animazione. E 'abbastanza strano. Ho anche cercato di mapView swap e tableView con self.view.subviews in questo modo (objectAtIndex:0 è un toolBar):

if (self.segmentControl.selectedSegmentIndex == 0) {
    [UIView transitionFromView:[self.view.subviews objectAtIndex:1]
                        toView:[self.view.subviews objectAtIndex:2]
                      duration:1.0
                       options:UIViewAnimationTransitionFlipFromLeft
                    completion:nil
         ];
    }
if (self.segmentControl.selectedSegmentIndex == 1) {
    [UIView transitionFromView:[self.view.subviews objectAtIndex:2]
                        toView:[self.view.subviews objectAtIndex:1]
                      duration:1.0
                       options:UIViewAnimationTransitionFlipFromRight
                    completion:nil
         ];
}
È stato utile?

Soluzione

Si sta utilizzando le opzioni sbagliate. Con questo metodo, è necessario utilizzare noreferrer le costanti UIViewAnimationOptionTransitionFlipFromLeft e …Right .

Il UIViewAnimationTransitionFlipFromLeft vecchi costanti e …Right devono essere utilizzati solo per il metodo +setAnimationTransition:… non basato blocco. Queste costanti hanno valori 1 e 2 rispettivamente, mentre quelli che ho citato sopra hanno valori 1 << 20 e 2 << 20, che sono completamente differenti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top