每个'btn1'调用相同的方法。
PS:这是UITableView
我想知道如何从按下按钮的哪一行获取。我尝试在每个按钮上做一个循环,按钮标记与上一个按钮的标记不同:
// Handle the buttons tag
int tagCount = 100;
// mainArray is the array of the tableView
for (int i = 0; i < [self.mainArray count]; i++) {
// I created a NSIndexPath to access the tableView cells
NSIndexPath *nowIndex = [NSIndexPath indexPathForRow:i inSection:0];
UITableViewCell *cell = (UITableViewCell *)[(UITableView *)self.view cellForRowAtIndexPath:nowIndex];
// I set the button tag as the 'int';
UIButton *shareButton = (UIButton *)[cell viewWithTag:100];
[shareButton setTag:tagCount];
tagCount++;
}
但标签仍然等于100;
任何解决方案?
答案 0 :(得分:1)
如果按钮是UIButton
个实例,则设置标签属性(可能是行号)。在事件方法中,您可以测试标记属性以查看按下了哪个按钮。
答案 1 :(得分:1)
您可以将UIButton
实例替换为UIImageView
,并使用常规和可选的突出显示图像,并将其设置为表格视图单元格accessoryView
。然后实施UITableViewDelegate
的{{1}}方法。这样,您就不必处理标签或存储对按钮的引用。如果您不需要任何UIButton交互(如选定状态或其他手势),则此方法应该足够。