ios - 在哪里创建自定义 UI 元素?

标签 ios xcode user-interface

一位想成为 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/

相关文章:

ios - 从一个文本字段移动到另一个

xcode - 如何编写 Xcode 插件?

c - 简单程序中的 <Error> <main.c>

Python tkinter网格布局问题

java - 乒乓球碰撞检测器( Racket 到球)

java - 如何解决 Android Studio 中组件重叠的问题?

ios - UICollectionViewDropDelegate:在删除图标上拖动单元格

ios - 将标记从 UITableViewController 添加到 UIViewController

ios - 如何从 ios 应用程序上传视频到 YouTube?通过使用 Oauth2 和 YouTube DATA 类

iphone - UIImagePickerController 保存文件路径 iOS/iPhone