gpt4 book ai didi

ios - 如何将 ViewController 的 subview 转换为另一个 ViewController 的 subview

转载 作者:行者123 更新时间:2023-11-29 12:20:14 25 4
gpt4 key购买 nike

我有两个 ViewController

一个 ViewControllers 包含一个 UITableView。另一个包含一个 UIButton

我已经以编程方式创建了一个 SubView。现在我想 SubView 包含 UITableViewViewController其他当我按下 UIButton 时。

我在网上搜索过,但没有找到任何稳定的解决方案。

目前我正在尝试这个:

   bodyView =[[UIView alloc]initWithFrame:CGRectMake(0,120,containerView.frame.size.width,120)];

bodyView.backgroundColor = [UIColor redColor];

CustomTableVC *tableVC = [[CustomTableVC alloc]init];

[tableVC willMoveToParentViewController:self];
[bodyView addSubview:tableVC.view];
[self addChildViewController:tableVC];
[tableVC didMoveToParentViewController:self];

[containerView addSubview:bodyView];

最佳答案

你不能。

您只能使用 UIViewControllerview 属性分配到第二个 UIViewController 关联的 UIView 中,这是不推荐的,因为 UIViewController 作为每个 MVC 模式包含很多 Controller 内容,包括填充 View 和解析输入/触摸,这在您(无需使用多个 View Controller )的情况下是一种开销。

您需要使用一个UIViewController。仅在其中添加 UITableView,仅在其中添加 UIButton。 您只使用一个 Controller 和多个 View 。

另一种方法,如果您不想更改代码,也可以使用 ContainerView。但在那种情况下,您需要为 UIButton 和 UITableView 创建单独的 ViewController。如果你想在 ViewController 之间获取数据,那将是一个巨大的痛苦,也是一个糟糕的软件设计,耦合太多,封装更少。

关于ios - 如何将 ViewController 的 subview 转换为另一个 ViewController 的 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30865399/

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