新手使用@selector的问题
在同一个类中有个方法如下:
-(void) hitHere:(NSInteger) number indexPath:(NSString *) str{
NSLog(@"打印的信息:编号%d,内容%@",number,str);
}
在另一个方法中有这行代码:
UITapGestureRecognizer *singleTouch=[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hitHere:indexPath:)];
这样的话@selector(hitHere:indexPath:)并不能传递参数呀????
那这两个参数该怎么传递呀????求解
[最优解释]
好像@selecttor职能传递(id)sender参数,多参数你应该再定义个方法,然后调用你的-(void) hitHere:(NSInteger) number indexPath:(NSString *) str{
比如你的方法叫-(void) buttonDone:(id) sender
{
[self hitHere:(NSInteger) number indexPath:(NSString *) str];赋值参数就可以了。
}
希望能帮助到你。
[其他解释]
方法可以这样写
-(void) hitHere:(UIGestureRecognizer *) gesture {
MyCell *cell = (MyCell *)[gesture view];
NSLog(@"打印的信息:编号%d,内容%@",cell.number,cell.titleContent);
}