今天的扩展程序“显示更多”按钮第一次不起作用

问题描述 投票:3回答:1

我为我的应用开发了Today Extension。当安装并点击“显示更多”按钮时,小部件不会展开(但按钮从“显示更多”变为“显示较少”。再次单击时,“显示更少”变为“显示更多”。窗口小部件尺寸不会更改,因为它之前没有扩展。在第一次尝试扩展和收缩窗口小部件之后,“显示更多”按钮可以正常工作。

我正在使用一个名为“列表”的快速数组,并在扩展模式下将窗口小部件的高度计算为list.count * 60,因为我希望窗口小部件进行扩展,并在其表视图中准确地将许多行显示为列表中的项目数。 >

我调试后发现preferredContentSize = CGSize(width: maxSize.width, height: list.count * 60)的值为CGSize(width: 359, height: 240)(列表中只有4个项目,因此4*60 = 240)。

[当我尝试使用下面的代码片段时,“显示更多”按钮也第一次很好用。

if activeDisplayMode == .expanded {
    preferredContentSize = maxSize
} else {
    preferredContentSize = maxSize
}

但是在小部件的表视图中还有其他不需要的空行。

这是负责在我的项目中更改小部件的模式的整个功能

func widgetActiveDisplayModeDidChange(_ activeDisplayMode: NCWidgetDisplayMode, withMaximumSize maxSize: CGSize) {
    if activeDisplayMode == .expanded {
        preferredContentSize = CGSize(width: maxSize.width, height: list.count * 60)
    } else {
        preferredContentSize = maxSize
    }
}

预期的行为是:

第一次单击“显示更多”时,小部件应展开,并在其表视图中准确显示许多行作为列表中的项目数。

我为我的应用开发了Today Extension。当安装并点击“显示更多”按钮时,小部件不会展开(但按钮从“显示更多”变为“显示更少”。再次点击时,...

ios swift uitableview today-extension
1个回答
0
投票
您可以执行以下操作:
© www.soinside.com 2019 - 2024. All rights reserved.