iOS更改不同大小类的视图属性

时间:2015-10-08 12:54:58

标签: ios size-classes ios-universal-app

我想知道是否可以更改特定大小类的不同视图属性。

例如,我有ImageView我为iPad选择了尺寸等级,我只想更改该尺寸等级的背景图像。

我认为选择size类并更改属性只会将更改应用于该size类,但情况似乎并非如此?

无论如何使用界面构建器实现此目的吗?而不是进入代码,并检测它是否是iPad并从那里应用更改?

2 个答案:

答案 0 :(得分:2)

不,使用大小类只能更改UILabel等字体大小等少数属性...如果您想更改iPad的背景图像,我想只有选项是检测设备是否为iPad。

答案 1 :(得分:0)

只有Interface Builder中具有小' +'的属性。它们旁边的按钮可以针对不同大小的类进行自定义。

但是,资产目录支持特定于尺寸类别的图像,因此OP的某些尺寸类别的不同背景图像的特定示例是可能的,无需编写代码。请参阅Xcode文档:https://developer.apple.com/library/mac/recipes/xcode_help-image_catalog-1.0/chapters/CustomizingImageSetsforSizeClasses.html#//apple_ref/doc/uid/TP40013303-CH10-SW1

另外,您始终可以使用文件名中的~ipad后缀或使用资产目录时指定特定于iPad的图像版本。但是大小类更灵活且面向未来,因为即使它在iPad上,您的应用程序也可能是紧凑的大小类。例如,在横向iPad上以50:50分割的每个应用程序都是紧凑的宽度,但在iPad Pro上它们是常规宽度。