通知扩展的宽高比可以通过UNNotificationExtensionInitialContentSizeRatio
扩展Info.plist
文件中的属性来定义。但是这个值可以在各自UIViewController
加载后以某种方式改变吗?
Apple网站上的文档表明确实有可能:
您可以在扩展加载后更改视图控制器的大小。
但是怎么做?我试过改变扩展的 mainUIView
框架,像这样......
func didReceive(_ notification: UNNotification) {
self.view.frame = CGRect(x: 0.0, y: 0.0, width: self.view.frame.width, height: 100.0)
self.view.setNeedsUpdateConstraints()
self.view.setNeedsLayout()
}
...但只有视图的框架被正确更新,整个通知容器底部有一个空白区域。
我还尝试了一些不太明显的解决方案,包括在控制器生命周期的不同点更改框架以及UIWindow
直接设置 ' 框架。到目前为止,没有一个是成功的。
知道是否可以通过编程方式更改高度吗?
提前感谢您的任何回答。