使用initWithParent方法传递参数

时间:2011-03-14 16:44:18

标签: iphone objective-c

方法

-(id) initWithParent:(id)parent
{
 // do something
}

调用上述方法

theM3u8Parser = [[M3u8Parser alloc] initWithParent:self];

这种方法很完美。但是现在我还需要将NSString传递给方法。

所以我把它改成了

-(id) initWithParent:(id)parent:(NSString*)str
{
//do something
}

然后我称之为

theM3u8Parser = [[M3u8Parser alloc] initWithParent:self:aStr];

但现在应用程序崩溃了 * 由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [M3u8Parser initWithParent:]:无法识别的选择器发送到实例0x6a10a50'

是否无法修改此方法?如果有,是否有办法访问字符串,该字符串是父类的成员变量?

由于 -code

1 个答案:

答案 0 :(得分:2)

当然可以修改方法。试试这样:

- (id)initWithParent:(id)parent andWithString:(NSString *)str;

然后这样称呼:

theM3u8Parser = [[M3u8Parser alloc] initWithParent:self andWithString:aStr];