我有一个带有单行控制器的WKInterfaceTable
。我使用以下代码将数据绑定到表:
[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:
逐个添加行,我会遇到同样的问题。在任何一种情况下,您都必须首先向表中添加行,然后才能更新行以显示正确的数据。
第一个问题是,由于这个原因,用户可以看到正在添加的行和绑定到它的数据之间的虚拟故事板数据。
我试过
nil
(即使它不是)({{3 }})是否真的没有方式在显示表行之前将其显示给用户?
答案 0 :(得分:3)
我有类似的问题,通过将作业分派到主线程来解决。
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.
}
});