Ios 交叉融合过渡会干扰UIPageController页面上的页面卷曲
我在UIPageController子类页面上的图像之间进行交叉融合。在应用转换时,可以翻页。有时,正在翻页的页面会在翻页中间变为透明,直到转换完成 在下面的代码中,Page类是UIViewController的一个子类,其视图具有UIImageView子视图。PageController是我的UIPageViewController子类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
@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];
}
}