Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/44.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 这个iOS动画块有什么问题?_Iphone_Ios_Cocoa Touch - Fatal编程技术网

Iphone 这个iOS动画块有什么问题?

Iphone 这个iOS动画块有什么问题?,iphone,ios,cocoa-touch,Iphone,Ios,Cocoa Touch,这是我制作动画的功能,如果想将视图从一个视图更改为另一个视图,将调用该功能,但我有一个问题,我有一个名为filter的viewController,在那里我有一个名为Reset的按钮,该按钮将重置其中的所有内容 但是为了证明重置已经完成,我想打电话给 [自动画与父对象:自切换自:自切换至:自] 但结果是我的观点是空白的。怎么可能呢?有其他方法吗?如果在重置内容时必须翻转当前视图控制器的视图,请使用transitionWithView:duration:options:animations:com

这是我制作动画的功能,如果想将视图从一个视图更改为另一个视图,将调用该功能,但我有一个问题,我有一个名为filter的viewController,在那里我有一个名为Reset的按钮,该按钮将重置其中的所有内容 但是为了证明重置已经完成,我想打电话给

[自动画与父对象:自切换自:自切换至:自]


但结果是我的观点是空白的。怎么可能呢?有其他方法吗?

如果在重置内容时必须翻转当前视图控制器的视图,请使用
transitionWithView:duration:options:animations:completion:
方法

示例

+ (void) AnimateSwitchingWithParent: (UIViewController *) ParentController From: (UIViewController *) From To: (UIViewController* ) To {

To.view.frame = ParentController.view.bounds;

[UIView transitionFromView:From.view toView:To.view 
        duration:1 
        options:UIViewAnimationOptionTransitionFlipFromLeft completion:NULL];

ParentController.view = To.view;

[To viewWillAppear:true];
}
旁注

+ (void) AnimateSwitchingWithParent: (UIViewController *) ParentController From: (UIViewController *) From To: (UIViewController* ) To {

To.view.frame = ParentController.view.bounds;

[UIView transitionFromView:From.view toView:To.view 
        duration:1 
        options:UIViewAnimationOptionTransitionFlipFromLeft completion:NULL];

ParentController.view = To.view;

[To viewWillAppear:true];
}
问题中的当前实现将有助于在视图层次结构中切换视图。假设
From.view
ParentController.view
的子视图,则下面的语句将
From.view
替换为
To.view
作为
ParentController.view
的子视图

[UIView transitionWithView:self.view
                  duration:1.0f
                   options:UIViewAnimationOptionTransitionFlipFromLeft
                animations:^(void) {
                    [self resetStuff];
                } 
                completion:nil];
你绝对不需要这么做

[UIView transitionFromView:From.view toView:To.view 
    duration:1 
    options:UIViewAnimationOptionTransitionFlipFromLeft completion:NULL];
这样做将替换
ParentController
视图
,该视图可能与您的预期不同,并且肯定与前一行的过渡动画相矛盾

你绝对不能打电话来

ParentController.view = To.view;
直接的


据我所知,您应该能够删除最后两行。

请开始使用命名约定,即正确的大小写。它使阅读和理解代码变得更加容易(并防止出现bug)。