ios - 在另一个 UIView 之上添加带有自己的 UIViewController 的 UIView

标签 ios objective-c uiview uiviewcontroller

我想在另一个 UIView 之上调出一个 UIView。我想以一种让 subview 拥有自己的 UIViewController 的方式来做到这一点。这可能吗?

所以我应该能够向 subview 添加一个按钮:

UIButton *closeButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
...
[closeButton addTarget:self action:@selector(closeMe) forControlEvents:UIControlEventTouchUpInside];

closeMe 是 subview 的 ViewController 中的一个方法。

在我的测试代码中,当用户点击关闭按钮时,它会因未定义的选择器而崩溃,因为父 View 的 ViewController 没有 closeMe 方法。

编辑:

抱歉,我提到 closeMe 方法只是作为示例。我需要用这个 subview 支持许多其他方法(例如处理 View 旋转),并且我的目标是封装具有自己的 ViewController 的 subview 。

最佳答案

-->使用自定义 View 创建您的 ChildView,该 View 是 UIView 的子类。
-->将此自定义 View 添加为 View 中的 subview
-->然后使用Protocol来完成你的任务。

关于ios - 在另一个 UIView 之上添加带有自己的 UIViewController 的 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15470181/

相关文章:

ios - 如何从 View Controller 中包含的 View 调用方法?

ios - 错误 : Initializer for conditional binding must have optional type, 不是 'String'

iphone - 如何判断一个整数是否是 10 的倍数(Xcode)?

ios - Apple 示例项目 PhotoMap 存在内存泄漏

iphone - 通过触摸传递到下面的 UIViews

iphone - 有没有办法从未完成的 UIView 动画中获取位置(或中心)状态?

ios - 在 UIView 生命周期中知道 View 何时被销毁

ios - 如何监控来自WKWebView的http请求?

objective-c - 新的 NSAttributedString 多行

ios - 从子类 setDelegate 设置父类(super class)委托(delegate)