0

我有一个循环遍历一组产品(产品)以查看它们的任何 id(product_id)是否与给定产品(p)的匹配。更新 UITextView (outputText) 的文本以向用户显示搜索的进展情况:

for (Product *q in products) {
    outputText.text = [NSString stringWithFormat:@"%@\nChecking: %@", outputText.text, q.name];
    NSLog(@"%@\nChecking: %@", outputText.text, q.name);
    if ([q.product_id intValue] == [p.product_id intValue]) {
        outputText.text = [NSString stringWithFormat:@"%@\nMatch: %@", outputText.text, q.name];
        break;
    }
}

问题是 UITextView 在循环完成之前似乎没有得到更新...... UITextView 大概是几秒钟的空白,大概是在处理循环时,虽然在 Xcode 控制台中我可以看到 nslog 文本滚动,然后突然之间,UITextView 一口气获取了所有文本。

有没有办法在循环期间将文本刷新到 UITextView?

非常感谢任何帮助,

谢谢

4

1 回答 1

0
  1. 确保您在主线程上更新 UI
  2. 称呼[outputText setNeedsDisplay:YES];
于 2012-05-31T22:31:09.020 回答