Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有一种方法可以在没有界面生成器的情况下(通过编程)使用iOS大小的类?_Ios_Objective C - Fatal编程技术网

有没有一种方法可以在没有界面生成器的情况下(通过编程)使用iOS大小的类?

有没有一种方法可以在没有界面生成器的情况下(通过编程)使用iOS大小的类?,ios,objective-c,Ios,Objective C,我一直在将Interface Builder与新的xcode 6结合使用,并使用Size类进行界面设计。对于过去的项目,我只编写所有接口和约束的代码。这非常有效,因为我的团队可以轻松地拉/推/合并代码 有没有办法继续只使用代码和大小类 我发现了一些对大小类的引用,但它们都只提到了Interface Builder的使用: 编辑: 特别是,如何通过代码为不同大小的类设置约束IB在这里所做的一切都是实现traitCollectionDidChange:。通过打开traitCollection

我一直在将Interface Builder与新的xcode 6结合使用,并使用Size类进行界面设计。对于过去的项目,我只编写所有接口和约束的代码。这非常有效,因为我的团队可以轻松地拉/推/合并代码

有没有办法继续只使用代码和大小类

我发现了一些对大小类的引用,但它们都只提到了Interface Builder的使用:

编辑:


特别是,如何通过代码为不同大小的类设置约束

IB在这里所做的一切都是实现
traitCollectionDidChange:
。通过打开
traitCollection
及其
horizontalSizeClass
verticalSizeClass
,它并没有做任何在代码中做不到的事情,事实上代码可能更清晰(更灵活)。

为什么不呢?API允许您处理大小类(特征集合)。你有什么具体问题?我对此也有点困惑。如果您在文档中查找“大小类”,唯一弹出的是Interface Builder。大小类/自适应布局和约束也一样-有多篇帮助文章,但都是关于IB的。几周前,我还徒劳地寻找类参考。如果您不知道如何查找
traitCollection
,则很难找到。除了在
UITraitCollection
类参考中,没有指向
UIUserInterfaceSizeClass
的链接。“大小类”实际上根本不是“类”,而是一个typedef,因此名称具有误导性。IB提供了同时支持iOS7和iOS8的优势。另一方面,UITraitCollection仅适用于iOS8。您必须编写一些额外的代码来支持这两种功能。