iOS今日扩展神秘高度

时间:2015-01-31 04:47:16

标签: ios xcode swift autolayout

我目前正在开发iOS Today Extension,我遇到了扩展高度问题。我已经多次试过,我似乎无法弄清楚额外高度来自哪里。我在哪里遇到AutoLayout错误。感谢。

故事板视图:

Storyboard View

场景视图:

Scene View

查看大小检查器:

Size Inspector

结果:

Simulator

我也试过使用以下内容并且说:

override func viewDidLoad() {
    super.viewDidLoad()
    self.preferredContentSize = CGSizeMake(0, 100);
}

PreferredContentSize

编辑:这可能是iOS错误吗?

我一直在桌子上打了一会儿,但是我注意到模拟器和物理设备上都有可重复的模式。如果我在模拟器上重置内容和设置然后在它上面运行Today Extension,它会填满整个空间(即使它不符合我的100个高度限制),但是一旦我'停止'运行它,视图会缩小到100高度,底部有这个额外的填充物。有没有人经历过这个?这是一个错误还是我正在引起的?

首次运行,同时'运行':

First run, while running

'停止'和随后的'跑'

After 'stopping'

1 个答案:

答案 0 :(得分:5)

终于找到了问题! Apple的默认利润率非常荒谬,特别是在底部。而改变它们的唯一方法是实现widgetMarginInsetsForProposedMarginInsets方法。这是快速的代码:

func widgetMarginInsetsForProposedMarginInsets(defaultMarginInsets: UIEdgeInsets) -> UIEdgeInsets {
    return UIEdgeInsetsZero
}