您可以使用performSelector:withObject:
选择器来传递对象。
例子:
[self performSelector:@selector(clickedInfo:) withObject:myIndex];
- (void) clickedInfo:(NSString *)itemIndex{
// some work with itemIndex
}
编辑:应该只是@selector(clickedInfo:)
而不是我以前的。
编辑:使用@newacct 的建议,我建议做类似以下的事情:
- (UITableViewCell *)tableView:(UITableView)tableView cellForRowAtIndexPath:(NSIndexPath)indexPath
{
button.tag = indexPath.row;
[button performSelector:@selector(clickedInfo:)];
// or
[button addTarget:self action:@selector(clickedInfo:) forControlEvents:UITouchUpInside];
}
- (void) clickedInfo:(id)sender
{
int row = sender.tag;
// Do stuff with the button and data
}