我创建了一个表视图,并使用FOR循环动态地向单元格添加了按钮。我也设置了标签。但问题是当我滚动表格视图时按钮的标签值正在改变。
有人可以告诉我如何纠正这个问题。
答案 0 :(得分:0)
不要用于循环。只是把
yourbtn.tag=indexpath.row
in cellforrowAtIndexPath方法
答案 1 :(得分:0)
不要使用for循环来创建表格视图单元格上的按钮 在cellForRowAtIndexPath创建按钮,如下
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(100, 2, 100, 40)];
btn.tag = indexpth.row ;
[btn setTitle:@"button" forState:UIControlStateNormal];[btn addTarget:selfaction:@selector(btnTouched:)forControlEvents:UIControlEventTouchUpInside];[btn release];
-(IBAction)btnTouched:(UIButton*)sender
{
switch (sender.tag)
{
case 0:{// This is 0 tag button do something here
} break;
case 1:
{
// This is 1 tag button do something here
} break;
}
答案 2 :(得分:0)
它们正在改变,因为表视图正在重用uitablewviewcells。另外,请查看此link