0

我有一个按钮,它在同一个视图上调用一个方法。该按钮生成数据并将我带到另一个 MapViewControlelr 。我在第一个视图上有“prepareForSegue”方法。但是 prepareForSegue 在按钮单击后首先被调用。结果,我的变量没有从方法调用中更新。知道有什么问题吗?

4

1 回答 1

0

我认为您应该使用 GCD 异步加载数据,然后执行 segue,如下所示:

dispatch_queue_t queue = dispatch_queue_create("queue", NULL);  
dispatch_release(queue);

dispatch_async(queue, ^(void) {
    // Generate data

    // Main queue
    dispatch_async(dispatch_get_main_queue(), ^(void) {
        // perform segue
            [self performSegueWithIdentifier: @"MySegue" sender: self];
    });
});

此外,不要将 segue 从 button 配置到 newViewController - 将其从 mainViewController 配置到 newViewController然后使用performSegueWithIdentifier方法

于 2012-10-31T03:24:15.233 回答