【发布时间】:2012-07-04 23:35:24
【问题描述】:
我不知道该如何提出这个问题。
我想创建一个像stringWithFormat: 或predicateWithFormat: 这样的方法,即我的方法直接接受参数作为带有格式说明符的字符串。我怎样才能做到这一点?
例如,
-(void) someMethod: (NSString *)str, format;
这样我以后可以这样称呼它:
[someObject someMethod:@"String with format %@",anotherString];
这与任何特定的上下文无关。
我在predicateWithFormat 工作,代码类似于:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name like myName"];
这不起作用,但是:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name like 'myName'"];
工作类似于:
NSString *str = @"myName";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name like %@",str];
所以这意味着该方法能够理解给定的参数是否在其中使用了格式说明符。我很好奇这是怎么做到的?
【问题讨论】:
标签: objective-c string cocoa methods format