【问题标题】:One class - few Xibs一节课 - 几个 Xib
【发布时间】:2016-12-25 23:33:14
【问题描述】:

我想为每种屏幕尺寸创建一个特定的xib,但只有一个UIViewController

如何将几个 xib 连接到一个类?

【问题讨论】:

  • 我认为重要的是要问你为什么需要这样做?您的问题很可能可以通过单个 xib 和自动布局/大小类来解决。你研究过自动布局吗?
  • @PatrickGoley 我做到了,我有一个复杂的视图,几乎不可能用约束来调整它,我已经尝试了几个小时,我认为最好的方法是为每个大小添加一个特定的 xib
  • 即便如此,在代码中调整单个 xib 的某些约束可能比复制整个布局更容易。您必须意识到通过在 4 个以上的 xib 文件中重复您的 UI 工作,您正在制造一场维护噩梦。当需要更改或更新时,您会讨厌自己。
  • 你用过尺码等级吗?
  • @PatrickGoley 我需要在图像内部的形状下放置一个标签(PNG 文件中具有该形状的背景图像),我需要它在该形状下正好是 5px。有约束是不可能的

标签: ios xib viewcontroller


【解决方案1】:

MyClass 是你的UIViewController

1.创建不同的xibs

myclass_iphone4
myclass_iphone5
myclass_iphone6

2。每个xib 都将拥有 MyClass 作为文件所有者来链接网点

3.动态加载 MyClass:

let deviceSize = //iphone4, iphone5, ....
let viewcontroller = MyClass(nibName: "myclass_\(deviceSize)", bundle: nil)

如果你觉得可以,请在 cmets 中告诉我。

【讨论】:

  • MyClass 应该是UIViewController。以及如何在这些 xib 和类之间共享属性?
  • 共享属性呢?
  • @FS.O5 您可以使用文件所有者链接您的插座
猜你喜欢
  • 2015-01-24
  • 1970-01-01
  • 2011-10-12
  • 2016-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-01
相关资源
最近更新 更多