xcode - ios - 如何最有效地重用视图控制器?

时间:2016-01-15 03:23:19

标签: ios

我创建了一个包含大量文本字段和文本视图的UIViewController,这是用户填写用户信息的表单。

我遇到的问题是,例如:UIViewController有6个不同的组件。

  • 用户名
  • 电子邮件
  • 密码
  • 确认密码
  • 位置
  • A段

创建它的工作很多,因为每个不同的文本输入,它们的字体,文本颜色,大小都是单独设置的。我想重用这个视图,但修改/覆盖少量的类。

复制和粘贴课程然后更改它似乎并不实用。

有没有办法我可以如何设置类,以便我可以对它进行子类化,然后覆盖其中一个UITextFields或其他对象和方法。那么我可以在整个项目中轻松分发这个类,只需修改单个文本字段或方法吗?

1 个答案:

答案 0 :(得分:0)

  1. 使用UIView创建一个.xib文件,其中包含以上所有选项。
  2. 创建一个子类为UIView的Objective-C类,并将此类映射到上面的.xib文件。
  3. 为所有UI元素生成IBouteLets并将这些IBoutlet范围设为全局(即在.h文件中声明它们)
  4. 在此课程中添加UITextView / UITextField等所有委托方法

  5. 从任何视图控制器,当您要将此视图添加到控制器的视图时

    NSArray * array = [[NSBundle mainBundle] loadNibNamed:@"CustomView" owner:self options:nil];
    CustomView * v = (CustomView *) [array objectAtIndex:0];
    
  6. 这里有一个CustomView类的参考。它是一个可重复使用的课程,无论你想要什么。