ios – UITraitCollection澄清

ios – UITraitCollection澄清,第1张

概述我试图弄清楚如何以编程方式使用UITraitCollection,但我发现很难弄清楚它.我正在开发iOS 8中的iPad视网膜. println(self.traitCollection)返回以下输出: <UITraitCollection: 0x10df4c7f0; _UITraitNameUserInterfaceIdiom = Pad, _UITraitNameDisplayScale = 我试图弄清楚如何以编程方式使用uitraitcollection,但我发现很难弄清楚它.我正在开发iOS 8中的iPad视网膜.

println(self.traitCollection)返回以下输出:

<uitraitcollection: 0x10df4c7f0; _UITraitnameUserInterfaceIdiom = Pad,_UITraitnamedisplayScale = 2.000000,_UITraitnameHorizontalSizeClass = Regular,_UITraitnameVerticalSizeClass = Regular,_UITraitnametouchLevel = 0,_UITraitnameInteractionModel = 1>

这很直截了当.
但是当我旋转屏幕时,我得到完全相同的输出.即,相同的垂直尺寸类和相同的水平尺寸类.

所以我的问题是,我是否需要为每个设备方向指定我想要的大小类(据我所知,大小类是只读属性!)或者我错过了一些明显的东西?
在WWDC 2014视频网站上的“Cocoa-touch中的新内容”演讲中给出的示例中,他使用iPhone作为示例,其针对每个设备方向具有不同的垂直/水平尺寸类别.

你会怎么做?

解决方法 This document(滚动到Universal Storyboards for Universal Apps)解释了iPad和iPhone的尺寸等级.

请注意,iPhone有点棘手.所有iPad在任何方向都是Regular-x-Regular,但是iPhone的尺寸等级会在方向上发生变化,从Portrait中的Regular(h)-x-Compact(w)到Landscape中的Compact-x-Compact.

对于所有这些变化的传闻解释是苹果可能很快会推出更多的屏幕分辨率,而目前的数字已经需要一堆if-then而没有这些尺寸等级.为了简化这种转变,我建议您考虑更像响应式网页设计的内容,在这里您可以定义一些通用布局,然后在其中一个布局中拉伸内容以适应任何确切的大小.

编辑:

1)如果链接断开,找到“iOS中的新东西”Apple Doc,转到iOS8部分,查找“支持新的屏幕大小和缩放”

2)iPhone 6在横向模式下具有规则宽度.

总结

以上是内存溢出为你收集整理的ios – UITraitCollection澄清全部内容,希望文章能够帮你解决ios – UITraitCollection澄清所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1057450.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存