我正在使用Xcode beta 6在iOS8中使用Today扩展小部件。
我在setPreferredContentSize:
中viewWillAppear:
设置了我的小部件框架
除了在横向iPhone上外,它在所有iOS设备中都能很好地工作。
在横向模式下的iPhone中,小部件的高度不会超过166px(在视网膜iPhone中,332px)。我试图将它设置为300px。
我理解高大的小部件可能不像苹果公司在App Extension Programming Guide中提到的那样糟糕,但如果有很多时间表,有时日历应用会变得很高。
由于我没有iOS8 iPhone,我只用模拟器测试过。 它是模拟器的错误吗?
任何建议都将受到赞赏。
答案 0 :(得分:3)
Apple未记录NC Widget的最大高度。
但是,根据我的经验,最大高度严格来说是屏幕的高度减去顶部和底部的控件。
这会产生不良影响,即适合iPad或iPhone 6 plus的小部件可能无法适合iPhone中的风格!
设备和iOS模拟器(从iOS 8.1.2开始)就是这种情况
在我正在编写的应用程序中,NC小部件的preferredContentSize.height始终为210磅。但是,在iPhone 5的横向上,小部件的高度上限为205.5磅。所以UI元素紧密地组合在一起。
我见过一些显示UITableViews的NC小工具,这些小工具有固定数量的行,可以在iPad或人像iPhone上正常工作,但会在横向iPhone上剪辑。
在这种情况下,您可能希望乐观地将preferredContentSize设置为所需的高度,然后检查窗口小部件视图的边界。如果高度小于首选高度,则最好减少显示的内容量。