我正在使用一些下載數據的代碼。代碼使用塊作爲回調。有幾種非常類似的下載方法:在回調塊中,如果出現錯誤,它們將顯示UIAlertView
。警報視圖始終是這樣的:在方法內或調用該方法時使用dispatch_async()
[req performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
if(error) {
dispatch_async(dispatch_get_main_queue(), ^{
[[NSNotificationCenter defaultCenter] postNotificationName:kFailed object:nil];
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error"
message:@"Connection failed"
delegate:nil
cancelButtonTitle:@"Ok"
otherButtonTitles:nil];
[alertView show];
});
}
}];
我想提醒視圖代碼移動到它自己的方法,因爲它被稱爲多次使用相同的參數。我是否也應該將dispatch_async()
移動到該方法,或者我是否應該在dispatch_async()
中將該方法的呼叫打包?