Jak przerzucić UIView nie pełnoekranowy w widoku z zaokrąglonymi rogami?
Odwracam UIViews podobne do odwrócenia strony aplikacji Pogoda. Widoki nie są jednak pełnoekranowe, a podgląd ma zaokrąglone rogi. Problem polega na tym, że podczas animacji przerzucania zaokrąglone rogi podglądu są wypełniane czarnymi kwadratowymi rogami.
Oto jak ustawiam rogi:
self.view.layer.cornerRadius = 15.0f;
self.view.clipsToBounds = YES;
Oto jak odwracam widoki (obafrontView
ibackView
są zachowane):
UIView *toView;
UIView *fromView;
UIViewAnimationOptions animationType;
if (toFront) {
toView = self.frontView;
fromView = self.backView;
animationType = UIViewAnimationOptionTransitionFlipFromLeft;
} else {
toView = self.backView;
fromView = self.frontView;
animationType = UIViewAnimationOptionTransitionFlipFromRight;
}
[UIView transitionFromView:self.fromView
toView:self.toView
duration:1
options:animationType
completion:nil];
Kiedy to robię,self.view
Zaokrąglone rogi są wypełnione czarnymi krawędziami prostokątnymi. Czy można tego uniknąć? Nie sądzę, żebym wiedział wystarczająco dużo o Core Animation, aby to rozwiązać.