我正在使用 Swift 3(iOS 10)开发 iMessage 扩展应用程序。但我的问题是,当用户将模式从折叠更改为展开或展开为折叠时,顶部约束正在更改,因此视图被隐藏。
从这个参考,为什么顶部布局指南在我的 iMessage 扩展中移动,我修复了问题(问题是当用户呈现视图控制器时视图将被隐藏)但是当改变模式时,它不起作用并且视图被隐藏.
有没有人在这方面有经验?
我正在使用 Swift 3(iOS 10)开发 iMessage 扩展应用程序。但我的问题是,当用户将模式从折叠更改为展开或展开为折叠时,顶部约束正在更改,因此视图被隐藏。
从这个参考,为什么顶部布局指南在我的 iMessage 扩展中移动,我修复了问题(问题是当用户呈现视图控制器时视图将被隐藏)但是当改变模式时,它不起作用并且视图被隐藏.
有没有人在这方面有经验?
我不确定它为什么会这样,这似乎是苹果方面的一个错误。但是根 MSMessageViewController 正确对齐,而且看起来只有根视图控制器接收到类似didTransitionToPresentationStyle或didSelectMessage的通知。
在我的应用程序中,我决定:
添加 MSMessageViewController 视图作为根控制器的子视图 - 适用于需要以全屏和紧凑样式工作的控制器。
对于仅在全屏模式下显示的 MSMessageViewController,我最终添加了具有固定值的情节提要上边距约束。同样,每当使用演示样式紧凑调用didTransitionToPresentationStyle时,这些控制器都会被解雇。
同样为方便起见,我创建了接收所有转换事件并允许任何视图控制器订阅为委托的单例对象
苹果开发者论坛相关讨论:https ://forums.developer.apple.com/thread/65349