4

我正在使用 Xcode beta 6 在 iOS8 中开发 Today 扩展小部件。

我通过 in 设置了我的小部件的框架,setPreferredContentSize:viewWillAppear: 在所有 iOS 设备上都能很好地工作,除了横向 iPhone。

在横向模式下的 iPhone 上,小部件的高度不超过 166px(在视网膜 iPhone 中,332px)。我正在尝试将其设置为大约 300 像素。

我知道高小部件可能很糟糕,正如 Apple 在App Extension Programming Guide中提到的那样,但如果有很多日程安排,有时日历应用程序会变得非常高。

由于我没有 iOS8 iPhone,我只用模拟器进行了测试。是模拟器的bug吗?

任何建议将被认真考虑。

4

1 回答 1

3

Apple 没有记录 NC Widget 的最大高度。

但是,根据我的经验,最大高度严格来说是屏幕的高度减去顶部和底部的控件。

这会产生不良影响,即非常适合 iPad 或 iPhone 6 plus 的小部件可能不适合横向的 iPhone!

设备和 iOS 模拟器都是这种情况(从 iOS 8.1.2 开始)

在我正在编写的应用程序中,NC 小部件的 preferredContentSize.height 始终为 210 pt。但是,在 iPhone 5 的横向上,小部件的高度上限为 205.5 pt。所以 UI 元素被更紧密地组合在一起。

我见过一些 NC 小部件,它们显示具有固定行数的 UITableView,这在 iPad 或纵向 iPhone 上运行良好,但在横向 iPhone 上会被剪裁。

在这种情况下,您可能希望将preferredContentSize 设置为您想要的高度,然后检查小部件视图的边界。如果高度小于首选高度,则最好减少显示的内容量。

于 2014-12-10T15:38:43.130 回答