Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.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
Ios 如何使用ViewWillLayoutSubview设置UIView帧的动画_Ios_Objective C_Animation_Uiview - Fatal编程技术网

Ios 如何使用ViewWillLayoutSubview设置UIView帧的动画

Ios 如何使用ViewWillLayoutSubview设置UIView帧的动画,ios,objective-c,animation,uiview,Ios,Objective C,Animation,Uiview,我已经以编程方式创建了两个UIView,并在ViewWillLayoutSubview函数中设置了它的帧,现在我想创建一个交换动画,以便每个视图在单击时用动画交换彼此的位置。为了获得这个动画,我必须在动画中交换它的帧,但同时调用ViewWillLayoutSubview,它将帧设置为初始位置 如何使用ViewWillLayoutSubview使UIView与动画交换 我没有使用任何类型的约束、xib或故事板。整个屏幕按程序设计 提前谢谢 -(void)viewWillLayoutSubviews

我已经以编程方式创建了两个UIView,并在ViewWillLayoutSubview函数中设置了它的帧,现在我想创建一个交换动画,以便每个视图在单击时用动画交换彼此的位置。为了获得这个动画,我必须在动画中交换它的帧,但同时调用ViewWillLayoutSubview,它将帧设置为初始位置

如何使用ViewWillLayoutSubview使UIView与动画交换

我没有使用任何类型的约束、xib或故事板。整个屏幕按程序设计

提前谢谢

-(void)viewWillLayoutSubviews
{
    if(Once)
   {
       // create 2 views here

      once = NO;
   }

}
按一下按钮把代码放进去

CGRect view2Frame = self.view2.frame;

[UIView animateWithDuration:duration delay:0 options:UIViewAnimationOptionCurveLinear  animations:^{
    //code with animation


      self.view2.frame = self.view1.frame;

      self.view1.frame = view2Frame;


} completion:^(BOOL finished) {
    //code for completion
}];

我应该在UIview动画块中编写什么?