0

我有带有自定义 UITableViewCells 的 UITableView。Cells 包含一个自定义视图,它是 SSCheckBoxView 的略微修改版本(可在 GitHub 上获得)

当我在 TableView 中滚动并且单元格从屏幕上消失时,自定义视图在重新出现时被切断。

在滚动我的单元格之前看起来像这样: https ://www.dropbox.com/s/hcyvgumhr7t1fxg/before.png

这就是视图重新出现时的样子: https ://www.dropbox.com/s/p6wirtj60ffssxm/after.png

这是我的 TableViewController 中的 cellForRowAtIndexPath 方法

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *myIdentifier = @"CarpartTableViewCell";

    CarpartTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:myIdentifier];

    if (cell == nil) {
        cell = (CarpartTableViewCell*) [[[NSBundle mainBundle] loadNibNamed:@"CarpartTableViewCell" 
                                                           owner:self 
                                                         options:nil] objectAtIndex:0];
    }

    cell.delegate = self;
    cell.tag = indexPath.row;

    Carpart *part = [_parts objectAtIndex:indexPath.row];

    cell.carpart.text = part.name;

    [cell.checkboxMaterial setText:@"Alubauteil"];
    [cell.checkboxPushing setText:@"Vordrücken"];

    cell.checkboxMaterial.checked = part.material.boolValue;
    cell.checkboxPushing.checked = part.pushing.boolValue;

    cell.checkboxPushing.tag = indexPath.row;
    cell.checkboxMaterial.tag = indexPath.row;

    [cell.checkboxMaterial setStateChangedTarget:self selector:@selector(materialChanged:)];
    [cell.checkboxPushing setStateChangedTarget:self selector:@selector(pushingChanged:)];

    return cell;
}
4

0 回答 0