iOS今日延伸神秘高地
iOS Today Extension Mystery Height
我目前正在开发 iOS Today 扩展程序,我遇到了扩展程序高度问题。我已经从头开始尝试了多次,但我似乎无法弄清楚额外高度的来源。 AutoLayout 哪里出错了。谢谢。
故事板视图:
场景视图:
视图尺寸检查器:
结果:
我也试过使用下面的,它是这样说的:
override func viewDidLoad() {
super.viewDidLoad()
self.preferredContentSize = CGSizeMake(0, 100);
}
编辑:这可能是一个 iOS 错误吗?
我已经为此苦苦思索了一段时间,但我注意到模拟器和物理设备上都有一个可重复的模式。如果我在模拟器上重置内容和设置,然后 运行 上面的 Today Extension,它会填满整个 space(即使它不符合我的 100 高度限制),但一旦我 'stop' 运行点击它,视图缩小到 100 高度并且底部有这个额外的填充。还有其他人遇到过这个吗?这是错误还是我造成的?
首先运行,而'running':
在 'stopping' 之后和随后的 'runs'
终于找到问题了!苹果有荒谬的违约率,尤其是在底部。更改它们的唯一方法是实施 widgetMarginInsetsForProposedMarginInsets 方法。这是 swift 代码:
func widgetMarginInsetsForProposedMarginInsets(defaultMarginInsets: UIEdgeInsets) -> UIEdgeInsets {
return UIEdgeInsetsZero
}
我目前正在开发 iOS Today 扩展程序,我遇到了扩展程序高度问题。我已经从头开始尝试了多次,但我似乎无法弄清楚额外高度的来源。 AutoLayout 哪里出错了。谢谢。
故事板视图:
场景视图:
视图尺寸检查器:
结果:
我也试过使用下面的,它是这样说的:
override func viewDidLoad() {
super.viewDidLoad()
self.preferredContentSize = CGSizeMake(0, 100);
}
编辑:这可能是一个 iOS 错误吗?
我已经为此苦苦思索了一段时间,但我注意到模拟器和物理设备上都有一个可重复的模式。如果我在模拟器上重置内容和设置,然后 运行 上面的 Today Extension,它会填满整个 space(即使它不符合我的 100 高度限制),但一旦我 'stop' 运行点击它,视图缩小到 100 高度并且底部有这个额外的填充。还有其他人遇到过这个吗?这是错误还是我造成的?
首先运行,而'running':
在 'stopping' 之后和随后的 'runs'
终于找到问题了!苹果有荒谬的违约率,尤其是在底部。更改它们的唯一方法是实施 widgetMarginInsetsForProposedMarginInsets 方法。这是 swift 代码:
func widgetMarginInsetsForProposedMarginInsets(defaultMarginInsets: UIEdgeInsets) -> UIEdgeInsets {
return UIEdgeInsetsZero
}