我有一个带有按钮的tablecell,我想把它挂钩到我的主类中的方法调用。
我有它工作,但我需要确定按下的按钮。所以我做了以下事情:
在cellForRowAtIndexPath中的我执行以下操作:
cell.myBtn.tag = indexPath.row;
[cell.myBtn addTarget:self
action:@selector(viewClick:)
forControlEvents:UIControlEventTouchUpInside];
我创建了这样的选择器方法:
- (void)viewClick:(id)sender
{
UIButton *pressedButton = (UIButton *)sender;
// EXC_BAD_ACCESS when running NSLog
NSLog(@"button row %@",pressedButton.tag);
if(pressedButton.tag == 1)
{
// NSString filename = @"VTS_02_1";
}
}
问题是当我遇到这一行时我得到了EXC_BAD_ACCESS:NSLog(@"button row %@",pressedButton.tag);
答案 0 :(得分:4)
为int值指定%i
你必须只使用%@作为对象,但int不是对象,NSNumber是一个可以使用%@的对象。
NSLog(@"button row %i",pressedButton.tag);
答案 1 :(得分:3)
尝试NSLog(@"button row %d", pressedButton.tag);
tag属性是一个int而不是一个对象。