Ios UITableView和UIButton重叠,不考虑单元格高度
我在tableView中有一个按钮,它的行为与我所希望的不一样 我已将按钮初始化放在tableView cellForRowAtIndexPath中的单元格==nil块中。当我将其移出该块时,按钮被多次绘制,所有其他按钮都在顶部,因此我无法移动它(除非设置错误) 我的按钮是一个简单的绿色勾号或红十字,并设置了一个选择器。tableView中的每一行高度根据其中的文本量而有所不同。但是,当我的按钮位于cell==nil部分时,它不考虑cell.frame.height。它重复使用表格视图第一次初始化时的单元格高度 这是按钮的代码:Ios UITableView和UIButton重叠,不考虑单元格高度,ios,objective-c,uitableview,uibutton,Ios,Objective C,Uitableview,Uibutton,我在tableView中有一个按钮,它的行为与我所希望的不一样 我已将按钮初始化放在tableView cellForRowAtIndexPath中的单元格==nil块中。当我将其移出该块时,按钮被多次绘制,所有其他按钮都在顶部,因此我无法移动它(除非设置错误) 我的按钮是一个简单的绿色勾号或红十字,并设置了一个选择器。tableView中的每一行高度根据其中的文本量而有所不同。但是,当我的按钮位于cell==nil部分时,它不考虑cell.frame.height。它重复使用表格视图第一次初始
button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button =[[UIButton alloc]init];
float framePos_x = cell.frame.size.width/1.30;
float framePos_y = cell.frame.size.height - 55;
NSLog(@"%f",cell.frame.size.height);
button.frame = CGRectMake(framePos_x, framePos_y, 35, 35);
buttonImage = [UIImage imageNamed:@"Notification_Accepted"];
buttonImage_Pressed = [UIImage imageNamed:@"Notification_Reject"];
[button setBackgroundImage:buttonImage forState:UIControlStateNormal];
[button setImage:buttonImage_Pressed forState:UIControlStateSelected];
button.tag = [UserID intValue];
[button addTarget:self action:@selector(ResponseFlagButton:) forControlEvents:UIControlEventTouchUpInside];
[cell.contentView addSubview:button];
我的NSLog的输出是:
2014-08-03 17:03:49.724 TableApp[5540:60b] 120.000000
2014-08-03 17:03:49.774 TableApp[5540:60b] 100.000000
2014-08-03 17:03:49.853 TableApp[5540:60b] 100.000000
2014-08-03 17:03:49.936 TableApp[5540:60b] 100.000000
2014-08-03 17:03:51.287 TableApp[5540:60b] 100.000000
当该日志位于cell=nil块内时,即使在上下滚动时,它也会输出全部内容。单元格外=nil块,它工作正常-与按钮相同(除了它的重画问题)
我如何让按钮每次绘制一次,而不将其放置在旧按钮的顶部。以及考虑可变单元格高度?子类
UITableViewCell
,并在单元格的layoutSubviews
方法中计算按钮的frame
子类UITableViewCell
并在单元格的layoutSubviews
方法中计算按钮的frame
子类UITableViewCell
并在单元格的layoutSubviews
方法中计算按钮的frame
子类UITableViewCell
并在单元格的layoutSubviews
方法中计算按钮的frame
我认为您需要将UITableViewCell子类化,并实现prepareforeuse方法。在prepareForReuse中,您将移除按钮。不是百分之百确定能解决你所描述的问题
子类化UITableViewCell还可以使计算按钮大小更容易。我认为您需要子类化UITableViewCell并实现prepareForReuse方法。在prepareForReuse中,您将移除按钮。不是百分之百确定能解决你所描述的问题
子类化UITableViewCell还可以使计算按钮大小更容易。我认为您需要子类化UITableViewCell并实现prepareForReuse方法。在prepareForReuse中,您将移除按钮。不是百分之百确定能解决你所描述的问题
子类化UITableViewCell还可以使计算按钮大小更容易。我认为您需要子类化UITableViewCell并实现prepareForReuse方法。在prepareForReuse中,您将移除按钮。不是百分之百确定能解决你所描述的问题
子类化UITableViewCell还可以更容易地计算按钮大小。我将结合Michal和Lev的答案
我会把Michal和Lev的答案结合起来
我会把Michal和Lev的答案结合起来
我会把Michal和Lev的答案结合起来