WKInterfaceTable 在添加行时显示故事板数据

WKInterfaceTable shows storyboard data when adding rows

我有一个带有单行控制器的 WKInterfaceTable。我正在使用以下代码将数据绑定到 table:

[self.table setNumberOfRows:[data count] withRowType:@"RowController"];
for (int i = 0; i < [data count]; i++)
{
    RowController *row = [self.table rowControllerAtIndex:i];
    [row bind:[data objectAtIndex:i]]; // sets labels in the row etc.
}

如果我使用 insertRowsAtIndexes:withRowTypes: 逐行添加,我会遇到同样的问题。无论哪种情况,您都必须先 添加 一行到 table,然后才能 更新 该行以显示正确的数据。

第一个问题是,因此,用户可以在添加的行和绑定到它的数据之间看到虚拟故事板数据。

我试过了

是否真的没有方式来呈现table行然后显示给用户?

我有一个类似的问题,通过将作业分派到主线程上解决了这个问题。

dispatch_async(dispatch_get_main_queue(), ^{
    [self.table setNumberOfRows:[data count] withRowType:@"RowController"];
    for (int i = 0; i < [data count]; i++)
    {
        RowController *row = [self.table rowControllerAtIndex:i];
        [row bind:[data objectAtIndex:i]]; // sets labels in the row etc.
    }
});