CLASS METHODメインスレッドでを呼び出すにはどうすればよいですか?何かのようなもの:
[SomeClass performSelectorOnMainThread:staticMethod withObject:nil];
このクラスメソッドを呼び出すための通常のメソッドを作成するように言わないでください。それは明らかな解決策ですが、きれいではありません。
ありがとう
CLASS METHODメインスレッドでを呼び出すにはどうすればよいですか?何かのようなもの:
[SomeClass performSelectorOnMainThread:staticMethod withObject:nil];
このクラスメソッドを呼び出すための通常のメソッドを作成するように言わないでください。それは明らかな解決策ですが、きれいではありません。
ありがとう
[SomeClass performSelectorOnMainThread:staticMethod withObject:nil waitUntilDone:NO];
はい、performSelectorOnMainThread:withObject:waitUntilDone:クラスメソッドではありません。
はい、それはのインスタンスメソッドNSObjectです。
はい、すべてのClassオブジェクトはのインスタンスですNSObject。(冗談じゃない!)
次のこともできます。
dispatch_async(dispatch_get_main_queue(), ^{
[SomeClass doClassyThingWithObject:object1 andDiddleyDoo:foo];
});
どうですか:
NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:[SomeClass class] selector:@selector(SomeClass) object:nil];
[[NSOperationQueue mainQueue] addOperation:operation];