Swift 2 - 如何在异步方法之后运行代码?

时间:2016-02-15 21:03:18

标签: database swift asynchronous firebase swift2

我使用以下异步方法从Firebase获取数据,ref只是我的数据库url。它工作得很好,但我想在加载数据后运行for循环。因为它是一个异步方法,所以它开始从数据库中获取数据并立即进入for循环。无论如何,我可以让它等到数据下载然后运行for循环?请帮忙! : - )

int sockfd;
int option = 1;
sockfd = socket(AF_INET, SOCK_STREAM, 0);
setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &option, sizeof(option));

1 个答案:

答案 0 :(得分:1)

您的代码可能看起来像这样:

ref.observeSingleEventOfType(.Value, withBlock: { snapshot in
    print(snapshot.value.objectForKey("Table")!)
    s = snapshot.value.objectForKey("items:")! as! String

    Str = s.componentsSeparatedByString(",")

    for part in Str {
        print(part)
    }
})

我还改变了你的循环,使其与下一版Swift兼容。