本文介绍了检查UIButtonViewCell上是否已经存在UIButton的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
对于每个 UITableViewCell
,我都在 tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath
中创建一个 UIButton
方法.我想检查 UIButton
在创建时是否已经存在,因此不会多次添加,但是我不能.这是我的代码:
For every UITableViewCell
I'm creating a UIButton
in the tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath
method. I want to check if UIButton
is already there when creating it, so it's not added multiple times, but I can't. Here's my code:
- (UITableViewCell *)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
UIImageView *cellBottomLine = [[UIImageView alloc] initWithFrame:CGRectMake(0.0, CELL_HEIGHT, 320.0, 1)];
cellBottomLine.image = [UIImage imageNamed:@"bottomCellImage.png"];
if (cellBottomLine.subviews) {
[cell addSubview:cellBottomLine];
}
copyButton = [BSFunctions createButtonWithNormalImageNamed:@"copyCellButton.png" highlightedImageName:@"copyCellButtonPressed.png" target:self selector:@selector(copyPressedFromCell:)];
[copyButton setFrame:CGRectMake(250, 10, 62, 32.5)];
copyButton.tag = indexPath.row;
if (!copyButton.superview) {
[cell addSubview:copyButton];
}
return cell;
}
推荐答案
- (UITableViewCell *)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
UIImageView *cellBottomLine = [[UIImageView alloc] initWithFrame:CGRectMake(0.0, CELL_HEIGHT, 320.0, 1)];
cellBottomLine.image = [UIImage imageNamed:@"bottomCellImage.png"];
if (cellBottomLine.subviews)
{
[cell addSubview:cellBottomLine];
}
for (UIView *view in [cell subviews])
{
if ([view isKindOfClass:[UIButton class]])
{
return cell;
}
}
copyButton = [BSFunctions createButtonWithNormalImageNamed:@"copyCellButton.png"
highlightedImageName:@"copyCellButtonPressed.png"
target:self
selector:@selector(copyPressedFromCell:)];
[copyButton setFrame:CGRectMake(250, 10, 62, 32.5)];
copyButton.tag = indexPath.row;
if (!copyButton.superview)
{
[cell addSubview:copyButton];
}
return cell;
}
这篇关于检查UIButtonViewCell上是否已经存在UIButton的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!