已更新今天的 iOS 10 扩展
实现委托方法:
-(void)widgetActiveDisplayModeDidChange:(NCWidgetDisplayMode)activeDisplayMode withMaximumSize:(CGSize)maxSize
{
if (activeDisplayMode == NCWidgetDisplayModeCompact){
[UIView animateWithDuration:0.25 animations:^{
self.preferredContentSize = maxSize;
[self.view layoutIfNeeded];
}];
}
else if (activeDisplayMode == NCWidgetDisplayModeExpanded){
newHeight = [self getNewWidgetHeight];
[UIView animateWithDuration:0.25 animations:^{
self.preferredContentSize = CGSizeMake(0, newHeight);
[self.view layoutIfNeeded];
}];
}
}
一切正常。但是,如果我将小部件保留在紧凑模式(显示更多选项可用),并且如果我重新运行/重新打开小部件屏幕,并且如果我点击“显示更多”按钮,即使触发了委托方法,也不会发生任何情况。我应该按两次显示更多/更少,直到小部件开始扩展。
我也收到此错误:No active animation block!
我发现了这个问题。
我已经编辑了self.preferredContentSize
即使小部件处于紧凑模式。每次更新时只需检查一下preferredContentSize
if widgetActiveDisplayMode
is NCWidgetDisplayModeExpanded
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)