IBOutlet UIView在tableView单元格中重复

时间:2014-08-01 03:10:48

标签: ios cocoa-touch uitableview uiview

我的自定义UIView有一个自定义tableViewCell,当我向下滚动时,它似乎在重复。前5个单元格将具有唯一视图,但第二组5个单元格将重复第一组单元格中的UIViews。我觉得我非常熟悉我的单元格出列,但在重复使用单元格之前,我似乎无法重置UIViews。我在重复使用tablebview单元时已经阅读了很多关于重复的SO答案,但似乎没有任何工作。这可能与我的UIView是IBOutlet有关吗?

每个表格视图单元格都有一个唯一的UIBezierPath,它设置为views path属性。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

    static NSString* identifier = @"audioTableCell";

    OSAudioTableCell *cell = [self.audioTable dequeueReusableCellWithIdentifier:identifier];

    if(cell == nil)
    {
        cell = [[OSAudioTableCell alloc] initWithStyle: UITableViewCellStyleDefault reuseIdentifier: identifier];
    }

        Recording * recording = [self.managedDocument.frc objectAtIndexPath:indexPath];
        cell.waveView.path = nil;
        cell.waveView.minAmpl = [recording.minAmpl floatValue];
        NSData * pathData = recording.waveData;
        cell.waveView.path = [NSKeyedUnarchiver unarchiveObjectWithData:pathData];
        [cell setImageSize:cell.waveView.bounds.size];
}

我已经尝试在我的自定义tableview单元格中的prepareForReuse方法中将UIView设置为nil,但它没有任何区别。

0 个答案:

没有答案