Ios 交叉融合过渡会干扰UIPageController页面上的页面卷曲

Ios 交叉融合过渡会干扰UIPageController页面上的页面卷曲,ios,objective-c,uipageviewcontroller,uiviewanimation,uikit-transitions,Ios,Objective C,Uipageviewcontroller,Uiviewanimation,Uikit Transitions,我在UIPageController子类页面上的图像之间进行交叉融合。在应用转换时,可以翻页。有时,正在翻页的页面会在翻页中间变为透明,直到转换完成 在下面的代码中,Page类是UIViewController的一个子类,其视图具有UIImageView子视图。PageController是我的UIPageViewController子类 @implementation PageController : UIPageViewController - (void)crossfadeToImag

我在UIPageController子类页面上的图像之间进行交叉融合。在应用转换时,可以翻页。有时,正在翻页的页面会在翻页中间变为透明,直到转换完成

在下面的代码中,Page类是UIViewController的一个子类,其视图具有UIImageView子视图。PageController是我的UIPageViewController子类

@implementation PageController : UIPageViewController 

- (void)crossfadeToImage:(UIImage *)image
{   
    for (int i = 0; i < self.pages.count; i++) {
        Page *page = self.pages[i];  // Pages fed to page controller in delegate
        [UIView transitionWithView:page.view duration:duration options:UIViewAnimationOptionTransitionCrossDissolve | UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionCurveEaseInOut animations:^{
            page.image = image;
        } completion:nil];
    }

}

我猜crossfade和page curl动画是以一种奇怪的方式堆叠的。关于如何防止“消失页面”副作用的任何想法?

结果表明,将动画应用到imageView直接解决了这一问题。比如:

- (void)crossfadeToImage:(UIImage *)image
{
    for (int i = 0; i < self.pages.count; i++) {
        Page *page = self.pages[i];  // Pages fed to page controller in delegate
        [UIView transitionWithView:page.**imageView** duration:duration options:UIViewAnimationOptionTransitionCrossDissolve | UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionCurveEaseInOut animations:^{
            page.**imageView**.image = image;
        } completion:nil];
    }
}
-(void)crossfadeToImage:(UIImage*)图像
{
对于(int i=0;i

尽管如此,任何关于它为什么不能以另一种方式工作的见解都是受欢迎的。

刚刚注意到,当直接应用于所讨论的imageView而不是page.view时,交叉溶解似乎不会干扰页面卷曲动画。
- (void)crossfadeToImage:(UIImage *)image
{
    for (int i = 0; i < self.pages.count; i++) {
        Page *page = self.pages[i];  // Pages fed to page controller in delegate
        [UIView transitionWithView:page.**imageView** duration:duration options:UIViewAnimationOptionTransitionCrossDissolve | UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionCurveEaseInOut animations:^{
            page.**imageView**.image = image;
        } completion:nil];
    }
}