gpt4 book ai didi

iphone - 具有多个 View 的 block 转换

转载 作者:行者123 更新时间:2023-11-28 17:43:35 26 4
gpt4 key购买 nike

到目前为止,我使用 begin/commit 方法在 View 之间切换。通过这种方式,可以很容易地“组合”两个或多个要同时插入到顶部的 View 。在我的例子中,它是一个带有 border2.view 的 content2.view。动画看起来像是一个 View ,内容在一个框架中。

    [UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:speed];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:window cache:YES];

[window addSubview:content2.view];
[window addSubview:border2.view];

[UIView commitAnimations];

content1.view = nil;

现在我想将动画转换成 block 。它也有效,但不是我不知道如何“合并”两个 View 。有办法吗?

[UIView transitionFromView:content1.view
toView:content2.view
duration:2.0
options:UIViewAnimationOptionTransitionFlipFromRight
completion:NULL];

最佳答案

您必须使用以下方法:

transitionWithView:duration:options:animations:completion:

transitionFromView:toView 是一种方便的方法,适用于需要从一个 View 转换到另一个 View 的最常见情况。

在这种情况下,您的代码应该是

[UIView transitionWithView:window
duration:2.0
options:UIViewAnimationOptionTransitionFlipFromRight
animations:^{ [window addSubview:content2.view];
[window addSubview:border2.view]; }
completion:^(BOOL completed){ [content1.view removeFromSuperview];
content1.view = nil; }

关于iphone - 具有多个 View 的 block 转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7086581/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com