gpt4 book ai didi

ios - 了解 iOS 中的 View 层次结构

转载 作者:行者123 更新时间:2023-11-29 04:16:05 29 4
gpt4 key购买 nike

我熟悉 UITabBarController 和 UINavigationController 范例,您可以在其中为不同的选项卡呈现新的 View Controller ,或推送/弹出新的 View Controller 。我不熟悉的是像 Flipboard 这样的应用程序。 Flipboard 将向我展示 3 个故事的预览。如果我点击其中一个故事,我看到的过渡基本上就是占据屏幕的故事。为了做这样的事情,我想知道你设置了什么样的 View 层次结构。我最初的本能是将 View 放在一起,然后隐藏和显示一个。我不喜欢这种方法的一点是它看起来很困惑,尤其是当 IB 中很多元素彼此重叠时。有没有更好的办法?创建一个新的 viewController 并执行类似的操作是否更好

- (IBAction)showDetailView:(id)sender {
[self.view addSubview:detailController.view]; // have the detailController.view as an ivar so we can reference it later
}

- (IBAction)removeDetailView:(id)sender {
[detailControllerIvar.view removeFromSuperview];
}

抱歉,如果这是一个基本问题。我不太熟悉这样的情况:我不只是使用 ViewController 通过推送/弹出、按选项卡、显示模式等来显示它自己的 View 。 addSubview 我不太熟悉,也没有不知道这是好还是坏做法。谢谢!

最佳答案

您想要使用transitionFromViewController:toViewController。它负责添加/删除 subview 。这是一个例子...

[self addChildViewController:toViewController];
[fromViewController willMoveToParentViewController:nil];

[self transitionFromViewController:fromViewController
toViewController:toViewController
duration:1.0f
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{}
completion:^(BOOL completed){
[fromViewController removeFromParentViewController];
[toViewController didMoveToParentViewController:self];
}];

关于ios - 了解 iOS 中的 View 层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13696213/

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