如何在界面生成器中创建自定义 UIView(具有许多 subview 、UITextFields 等)?
我不想要一个带有 NIB 的 viewController 只是一个简单的 UIView,有很多 subview ,在 IB 中创建,然后我可以分配初始化和使用,这可能吗?
最佳答案
是的,您可以在 nib 中创建 UIView——当您创建基于 View 的 nib 时,这就是您正在创建的 UIView。没有 View Controller (尽管通常,您将 View Controller 设置为 nib 的文件所有者)。
您需要创建一个自定义 View 类,并将 xib 上的 View 类更改为该自定义类,以连接该 View 中的 IBOutlets。当你想在 Controller 中使用 View 时,你可以像这样实例化它:
UINib *nib = [UINib nibWithNibName:@"CustomView" bundle:nil];
CustomView *view = [[nib instantiateWithOwner:self options:nil] objectAtIndex:0];
此方法的局限性在于,您的 outlet 属于 View 类而不是 View Controller ,这在 MVC 意义上可能不是(但可能是)正确的做法。
关于ios - Interface Builder - 如何创建具有多个 subview 的自定义 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18109741/