OStack程序员社区-中国程序员成长平台

标题: ios创建然后动态添加UI元素 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 20:48
标题: ios创建然后动态添加UI元素

我不知道这是否可能,但听起来应该是这样。

我想要做的是,在 Interface Builder 中创建 UIViews(或不确定如何工作的 UIViewControllers)说...其中 10 个,并根据用户的选择使用它们。

例如,在状态 A 中,我想向他展示小部件 1,2 和 3; 在状态 B 小部件 3,5 和 7 等。

编辑:我所说的状态是指根据用户在前面的步骤中选择的内容,它们都导致相同的 UIViewController 但它应该根据上述“状态”以不同的方式呈现自己。现在我不能为每个不同的组合创建不同的 UIViewController

还必须能够将它们定位在父 View 中。

有什么建议吗?



Best Answer-推荐答案


好的,所以在回答你的评论时,你确实可以做你想做的事。为您的自定义 View 创建一个单独的 nib 文件,例如 MyView.xib,并使文件所有者的类成为您的 View Controller 类。

然后在您的 View Controller 中,为自定义 View 创建一个 IBOutlet 属性:

@property (nonatomic, assign) IBOutlet MyView * myView;

在 nib 文件中,将 View Controller 的 myView 导出连接到顶层 View 。

然后在代码中加载 View ,你需要做的就是:

[[NSBundle mainBundle] )loadNibNamed: @"MyView" owner: self options: nil];

然后 nib 将被加载,并分配给 myView。然后您可以将其添加为 subview 。

要使其与另一个 View Controller 一起工作,只需确保它具有相同的命名 socket ,进行 loadNibNamed: 调用,它就会正常工作。

关于ios创建然后动态添加UI元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8616053/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4