Ben*_*n S 7 iphone objective-c anonymous-methods selector
我希望能够定义一个内联匿名选择器,选择器只需要一个选择器作为参数.
这是可能的,还是我必须吮吸它并定义一个方法?
背景:在我的iPhone应用程序中,我需要从另一个线程更新我的UI.要做到这一点,我使用performSelectorOnMainThread:withObject:waitUntilDone:但是,我希望能够获得此功能,而无需定义整个其他方法.
Chu*_*uck 16
很不幸的是,不行.这个想法是自相矛盾的 - 选择器是一个名字.这就是全部.它没有定义任何功能.
直到最近,当块被引入Mac OS X时,Objective-C没有任何类型的匿名功能.可以通过Plausible Blocks在iPhone上使用它们,但它们仍然没有集成到那里的API中.
这个答案在2009年是正确的,但到目前为止,Apple已经将块很好地集成到iOS框架中.它们现在非常普遍地用于回调,并且在Grand Central Dispatch并发库中被大量使用.