我发现一个恼人的问题,当UITableView在 insetGrouped
风格。当实现 contextMenuConfigurationForRowAtIndexPath
方法,它允许通过上下文操作来进行单元格预览。除了iOS会将预览窗口的边角磨圆的功能外,一切都很好。
但是,如果表格在每一个其他的风格(例如,普通),角落成为圆角。而且在普通模式下的动画更 "平滑",预览也会缩小一点。
我还发现,iOS对第一个单元格的上角是四舍五入,对最后一个单元格的下角是四舍五入。insetGrouped
风格。
有谁遇到过类似行为的 UITableView
?
通过实现'previewForHighlightingContextMenuWithConfiguration'方法,可以对单元格进行圆角处理。
- (UITargetedPreview *)tableView:(UITableView *)tableView previewForHighlightingContextMenuWithConfiguration:(UIContextMenuConfiguration *)configuration {
NSIndexPath *index = (NSIndexPath *)configuration.identifier;
SharedTableViewCell *cell = [self.tableView cellForRowAtIndexPath:index];
UIPreviewParameters *parameters = [[UIPreviewParameters alloc] init];
parameters.backgroundColor = UIColor.clearColor;
parameters.visiblePath = [UIBezierPath bezierPathWithRoundedRect:cell.bounds cornerRadius:10.0];
UITargetedPreview *targetedPreview = [[UITargetedPreview alloc] initWithView:cell parameters:parameters];
return targetedPreview;
}