【问题标题】:How to use auto layout on IOS8 Keyboard extension如何在 IOS8 键盘扩展上使用自动布局
【发布时间】:2014-09-28 13:17:28
【问题描述】:

尝试使自动布局与键盘扩展一起使用。最初我以为我会以编程方式制作按钮,但后来我意识到使用 xib 更好,因为我的要求和多种屏幕尺寸。

请查看下面的屏幕截图,了解我所做的当前配置。 按钮 2:

按钮 1 和应用程序上的问题:

所有约束配置如下所示:

我在这里要做的就是确保按钮填满屏幕宽度。它们可以扩展宽度以匹配屏幕尺寸和方向。不知何故,我觉得它无法理解设备宽度。我需要为此指定一些东西吗?

谢谢

【问题讨论】:

  • 任何帮助家伙!这不可能吗?

标签: xcode swift ios8 xcode6 ios8-extension


【解决方案1】:

确保在 viewDidLoad 上设置 UIView 的 尺寸,使其看起来像这样:

self.mainView.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);

我遇到了同样的问题,这对我有用。你的约束很好。

【讨论】:

    【解决方案2】:

    您对两个按钮之间的距离没有限制。尝试在每个按钮的按钮之间添加约束。

    【讨论】:

    • Button 1 的宽度限制是多少?我看到 Button 2 有一个,但目前已禁用。
    • 任何按钮都没有宽度限制,因为我希望它们根据布局进行拉伸。灰色的已经被删除了。
    【解决方案3】:

    Ben Flores 的回答也对我有用,但我必须将代码放入 viewDidLayoutSubviews。否则我的键盘会崩溃并且不显示。 Swift 3 版本:

    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        let frameSize = self.view.frame.size
        self.mainView.frame = CGRect(x: 0, y: 0, width: frameSize.width, height: frameSize.height)
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-19
      • 1970-01-01
      • 1970-01-01
      • 2016-02-05
      • 2015-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多