一位想成为 iOS 开发者的简短问题。我想在没有 Interface Builder 的情况下仅以编程方式为 iPhone 应用程序创建 UI。但是,我想坚持 MVC 建议并将 V 和 C 分开,并拥有干净可读的代码,因此:
- 我创建 UIView 类文件(例如 SplashView.h 和 SplashView.m)
- 我创建 UIViewController 类文件(SplashViewController.h 和 SplashViewController.m)
- 我在 UIView 类文件中定义 UI 元素( View 、 subview 、按钮和文本字段)
- 我在 View Controller 的 loadView 方法中加载主视图,然后在 View Controller 的 viewDidLoad 方法中执行其他操作
这是一个正确的方法吗?
问题的第二部分,与第一部分的是/否答案无关。在哪里定义这些自定义 UI 元素? - 在 View 的 initWithFrame: 方法中? - 在单独的(属性 getter ?属性 setter ?)方法中? IE。我必须首先在 .h 文件中将每个 UI 元素声明为属性吗?
如果这些问题听起来有点无知,那一定是因为它们确实是:) 我在 StackOverflow 上找到了很多示例代码,但几乎没有表明您实际将其放在哪里。我将非常感谢任何帮助,特别是如果您可以粘贴/引用一些相关代码。
最佳答案
您的列表是正确的。这就是我制作所有应用程序的方式。没有界面生成器,只有代码。
每个自定义 View 通常会在适当的 initXXX
方法中创建自己的 subview 。这可能是 initWithFrame:
但您可以根据需要定义其他内容。 subview 布局可以通过约束、自动调整大小蒙版或通过实现 layoutSubview
来完成。
每个 View Controller 都会在viewDidLoad
中实例化其所需的 View 。 View 布局可以通过约束、自动调整大小蒙版或实现 viewWillLayoutSubviews
来完成。
属性的使用完全是可选的。为要从外部类设置/获取的任何内容创建公共(public)属性。可以选择为实现内部的值创建私有(private)属性。
关于ios - 在哪里创建自定义 UI 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15236388/