【发布时间】:2012-08-28 19:09:19
【问题描述】:
在我的代码中,我运行一个 -(id) 代码,一般方法是返回一个字符串或布尔值。有没有办法我可以返回一个方法?在代码中,我有几个“if”语句,并希望每个“if”语句执行另一个我在其他地方有的 void 函数。那么,有可能吗?
【问题讨论】:
标签: iphone ios xcode methods void
在我的代码中,我运行一个 -(id) 代码,一般方法是返回一个字符串或布尔值。有没有办法我可以返回一个方法?在代码中,我有几个“if”语句,并希望每个“if”语句执行另一个我在其他地方有的 void 函数。那么,有可能吗?
【问题讨论】:
标签: iphone ios xcode methods void
不质疑设计……
你可以返回一个块或NSInvocation。
【讨论】:
你可以返回一个 Block 而不是 id。在这里您可以找到 Apple 关于使用块的文档:http://developer.apple.com/library/ios/#featuredarticles/Short_Practical_Guide_Blocks/_index.html
【讨论】:
您可以返回一个选择器 (SEL),或者更好的是,一个代码块。
【讨论】:
您也可以返回 (id) 作为响应。
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
【讨论】: