0

: performSelector:withObject:afterDelay コードを使用してそれぞれ複数のアクションを実行する方法はありますか? サンプルコードをいただければ幸いです。よろしくお願いします。

4

2 に答える 2

1

またはブロックを使用します。の入力を開始するとdispatch_after、コード補完が表示され、次のコード スニペットがポップアップ表示されます。その後、そのブロックに必要な数のアクションを配置できます。この例では、内部で使用されていることを示していますIBAction:

- (IBAction)pushedSomeButton:(id)sender
{
    // anything you want to do immediate, do here

    [self doingSomethingRightNow];

    // anything you want to defer for some time, do inside the dispatch_after block
    // in this example, calling callAnotherMethod and whyNotCallAnotherMethod

    int64_t delayInSeconds = 2.0;
    dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
    dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
        [self callAnotherMethod];
        [self whyNotCallAnotherMethod];
    });
}
于 2012-10-20T02:47:43.420 に答える
0

performSelector:withObject:afterDelay: 呼び出しで起動されるメソッドをセットアップします。

-(void)performTheseAction {
    // do something
    // do something else
    [self callAnotherMethod];
    [self whyNotCallAnotherMethod];
}
于 2012-10-20T01:58:16.877 に答える