0
    SLIDERReader *slreader = [[SLIDERReader alloc] init];
    [slreader startRequest];

我的应用程序委托中有这些请求,确切地说是 16 个。当我将它们放在异步块中时,它们不会像我想要的那样快速更新。

所以我想做的是将此功能分配给一个按钮,这样一旦用户进入该部分,他们就可以按下该按钮来启动请求并重新加载数据。

我在下面有一个类似的问题,导致将它们包装在异步块中。 如何从 AppDelegate 移动这些流程并从每个呼叫中​​设置单独的代表?

4

1 回答 1

0

您可以简单地使用此代码并将其连接到任何 UIButton:

- (IBAction) sliderReaderMakeRequest {
    SLIDERReader *slreader = [[SLIDERReader alloc] init];
    [slreader startRequest];
}

或者如果您想在线程中执行此操作:

@property (nonatomic, strong) NSOperationQueue *operationQueue;

- (void)awakeFromNib {

    self.operationQueue = [[NSOperationQueue alloc] init];

}

- (IBAction) sliderReaderMakeRequest {

   NSInvocationOperation *op = [[ NSInvocationOperation alloc] initWithTarget:self
                                                                   selector:@selector(makeSliderRequest)
                                                                    object:nil];
    [_operationQueue addOperation:op];

}

- (void) makeSliderRequest {

   SLIDERReader *slreader = [[SLIDERReader alloc] init];
   [slreader startRequest];

   [self performSelectorOnMainThread:@selector(finishMakeSliderRequest) withObject:nil waitUntilDone:YES];

}

- (void) finishMakeSliderRequest  {
     //Whatever you want on main thread with data come from request

}
于 2013-09-17T15:16:31.717 回答