【问题标题】:Xcode 6.1.1 StoryBoard SizeXcode 6.1.1 故事板大小
【发布时间】:2015-07-18 08:42:56
【问题描述】:

早安,

我是 Xcode 的新手,正在学习创建 iOS 应用程序。

当我打开单个视图应用程序并单击 main.storyboard 时,我的大小是 w Any h Any。当我决定添加标签并运行 iOS 模拟器(iPhone 6 或 iPhone 5S)时,标签会出现在其他地方。

这真的令人沮丧,我尝试了许多方法,例如禁用使用大小类,通过单击 w Any h Any 按钮更改情节提要大小,甚至弄乱此处提到的约束:Xcode 6 Storyboard the wrong size?

我真的很想继续这件事,但我现在似乎碰壁了几个小时,如果有人能解释我为什么要搞砸这件事,那就太棒了。

编辑:我怎样才能让它成为一个“正常”大小的 iPhone,比如 iPhone 5s?

【问题讨论】:

    标签: xcode xcode-storyboard


    【解决方案1】:

    您可以单击 w Any h Any 将其更改为正常的 iphone 尺寸,方法是将鼠标悬停在方块上并阅读它们包含的设备。

    您将不得不使用约束,但是为了使任何事情都能按您的意愿进行,我真的不想学习它们,但我现在离不开它们:它们非常有用。

    编辑

    约束在概念上很简单,但在某些情况下可能会很棘手:

    对于任何具有正确工作的有效约束的视图,它需要知道视图的大小以及它在它的“父容器”中的位置,即它所在的任何视图或视图控制器。

    小|-O-|形状按钮及其旁边的“w Any h Any”按钮为您提供了用于定位和调整视图大小的选项。因此,如果您单击一个视图,然后单击中间的那个方形按钮,请检查宽度、高度框,然后单击该顶部定位事物中的左行和上行,其中包含如下大小:

    然后点击添加 4 个约束。您会注意到视图周围出现蓝线,表示它可以在运行应用程序时将其正确放置在需要去的地方。如果有任何橙色或红色,则表示视图上存在冲突的约束。

    有时这可能意味着您设置了许多限制(超出您的需要),您只需在尺寸检查器选项卡中删除它们。但通常情况下,如果这不能解决问题,我注意到我通常有一个相邻的视图没有被适当地“约束”,实际上是其他视图问题的原因。

    【讨论】:

    • 您能否更详细地解释一下如何使用约束?我已经尝试过,但不确定该怎么做。例如,假设我选择了大小为 w Compact h Any
    • @Jessica 我用一个小教程更新了我的答案,网上有更详细的教程解释了您可以添加到视图中的更多不同约束。
    • 好的,我必须为每个视图都这样做吗?另外,当您说“查看”时,您指的是正确的标签吗?为什么不直接称它为标签?
    • 另外作为建议,我应该在任何尺寸下工作并只添加约束吗?或者我应该说一个更适合 iPhone 的尺寸并从那里添加约束? (假设我现在只为 iPhone 制作应用程序,因为我需要从某个地方开始)
    • 是的,我指的是标签,但即使是标签也是 UIView 的子类,您可以在界面构建器中拖放的大多数控件都是 UIView。您必须对每个视图都执行此操作,但它很快就会成为第二天性。是的,我通常使用任何尺寸来设计它,然后当它没有在某个设备上正确显示时,我更改类以匹配该设备,然后添加或重新排列该特定设备类的约束。
    【解决方案2】:

    我怎样才能让它成为一个“普通”尺寸的 iPhone,比如 iPhone 5s

    你没有。当应用程序运行时(在设备上或模拟器中),视图控制器的主视图将根据设备类型及其周围环境的其他方面正确调整大小。

    您的工作是使用自动布局,以便无论视图如何调整大小,其子视图(标签和按钮等)都会看起来不错。这就是自动布局的作用 - 它可以帮助您弥补您不知道此视图在运行时的实际大小的事实。

    【讨论】:

      猜你喜欢
      • 2014-12-20
      • 2012-04-10
      • 2014-07-27
      • 1970-01-01
      • 2015-05-19
      • 2014-11-18
      • 1970-01-01
      • 1970-01-01
      • 2019-03-19
      相关资源
      最近更新 更多