我有一个自定义视图,需要显示在所有iPhone设备上(4,4S,5,5S,6和6 Plus)。在创建自定义视图XIB时,我已经将其称为“推断”,但它没有对iPhone 6和iPhone 6 Plus设备进行调整大小。我想不出这个问题。我对“推断”和“自由形式”之间的实际区别感到困惑。谁能解释一下不同之处吗?
发布于 2015-09-28 12:32:54
“推断”是故事板的默认设置,这意味着场景将在导航控制器内部显示导航条,在选项卡条控制器内部显示选项卡栏,等等。如果您愿意,可以重写这些设置,但请记住,它们在这里只是为了帮助您设计屏幕。模拟度量衡不是在运行时使用的,它们只是一个可视化的设计辅助工具,可以显示您的屏幕最终会是什么样子。
" freeform“通常在以编程方式将视图控制器作为子视图添加到另一个视图控制器时使用freeform属性,并且您确实希望有一个固定的视图控制器--您推送视图控制器或将其表示为模态视图控制器(并且您使用了模态表示样式),那么就没有必要使用freeform.Also --当使用现有的表示样式作为模态视图控制器显示时,freeform属性的另一种用法是预览视图控制器的实际大小。
发布于 2015-09-28 09:46:13
推断根据其父场景调整场景大小。例如,如果您有一个与iPad大小相同的场景,然后向您的故事板中添加一个新场景并为其创建一个segue,它将自动调整到与iPad场景大小相同的大小( segue来自该场景)。
Freeform忽略了上面的规则,您可以在右边的实用程序窗格中根据您认为合适的情况来调整它的大小。
然而,这两者都与视图在实际设备上的显示和大小无关。为此,您需要使用auto layout和约束。或springs and struts.有些人甚至在需要更多灵活性的情况下,在代码中这样做。
https://stackoverflow.com/questions/32819768
复制相似问题