调用 removeRowsAtIndexes 后 WKInterfaceTable 不更新

WKInterfaceTable not updating after calling removeRowsAtIndexes

也许我做错了什么,但如果我像这样在 WKInterfaceTable 实例上调用 removeRowsAtIndexes:

NSIndexSet *indexes = [[NSIndexSet alloc] initWithIndex:index];
[self.table removeRowsAtIndexes:indexes];

table 不应该更新吗?记录 table 报告的 numberOfRows 显示数字正确减 1,但屏幕上没有任何变化。

在这一点之后尝试 select 一行实际上会导致 select 下一行,所以很明显 table 已经记录了删除但至少在模拟器中它没有显示。 有没有其他人经历过这个?这是一个错误还是我需要强制 table 以某种方式刷新?

在调用 removeRows AtIndexes 之前,您的 class 必须完全加载。 (当手表界面对用户可见时)。

- (void)willActivate {
    [super willActivate];

    NSIndexSet *indexes = [NSIndexSet indexSetWithIndex:index];
    [self.table removeRowsAtIndexes:indexes];
}

您是在什么时候在代码中调用 removeRowsAtIndexes 方法的?