如何在GCD块中指定返回类型?在这里,我想将结果作为NSData...
- (NSData *)returnData:(NSString *)urlString{
dispatch_queue_t concurrentQueue =
dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_sync(concurrentQueue, ^{ // here return type showing error
NSString *strUrl = urlString;
if([strUrl length] == 0)
return nil; // from this point i want to stop the execution of the block and return nil .
// otherwise only continue the left operations
});
}
Run Code Online (Sandbox Code Playgroud) objective-c grand-central-dispatch ios4 ios objective-c-blocks
我有一个单例类从Web下载一些数据.我从GCD队列中的其他类'A'调用单例类的下载方法,并开始下载.同时我也从GCD队列中的类'B'执行此下载方法.在这种情况下,我想通知班级'B'等到下载完成.下载完成后,还将下载数据的副本提供给"B"类.这里我试图从两个A和B类下载相同的文件,否则我的实现没有问题.这怎么可能?
这意味着我在不同的线程中调用相同的方法.那么如何向线程B发出信号,告知线程A中正在进行相同的文件下载,并且在完成时也将数据传递给线程B.
- (NSData *)Download:(NSString *)urlString{
// here I am doing all the downloading operations
return data;
}
Run Code Online (Sandbox Code Playgroud) 如何在iOS中使用图像创建连续动画?我想创建一个循环动作,其中我的imageView保持在屏幕边界内,但x轴不断前进,所以它基本上会产生动画效果..所以我只需要使用一个图像.任何帮助将不胜感激!!想法?
我的图像是800*12像素的大图像.
在这里,我使用int属性newsID 对包含NewsData对象的NSMutableArray newsDataArray进行排序.现在正在运作.但是我怎么能以更好的方式做到这一点.有没有更好的方法......
NSSortDescriptor *sortDesc = [[NSSortDescriptor alloc] initWithKey:@"newsID" ascending:NO];
NSArray *tempArray = [newsDataArray sortedArrayUsingDescriptors:[NSArray arrayWithObject:sortDesc]];
NSMutableArray *sortedArray = [NSMutableArray arrayWithArray:tempArray];
NSLog(@"sortedArray=%@" ,sortedArray);
Run Code Online (Sandbox Code Playgroud)
当我使用以下方法与块时出现一些错误.我希望将newsDataArray排序为我的最终结果....任何人都给我一个明确的例子......
ios ×4
objective-c ×3
animation ×1
cocoa-touch ×1
ios4 ×1
progress-bar ×1
uiimage ×1
uiimageview ×1