UITableviewの区切り線の高さを調整できますか? 区切り線として使用するセルに追加するUIViewと、セルをスライドして削除すると、削除ボタンが問題になり、区切り線と重なるか、削除ボタンの高さを調整できますか?



UITableviewの区切り線の高さを調整できますか? 区切り線として使用するセルに追加するUIViewと、セルをスライドして削除すると、削除ボタンが問題になり、区切り線と重なるか、削除ボタンの高さを調整できますか?



Rashad によって貼り付けられたコードはかなり古く (ここにあります)、iOS 7 または iOS 8 では機能しないようです。
動作する更新されたコードは次のとおりです。
-(void)layoutSubviews {
UIView *deleteButtonView = nil;
for (UIView *subview in self.subviews) {
// find the delete view in iOS 8
if ([NSStringFromClass([subview class]) isEqualToString:@"UITableViewCellDeleteConfirmationView"]){
deleteButtonView = subview;
break;
}
// find the delete view in iOS 7
if ([NSStringFromClass([subview class]) isEqualToString:@"UITableViewCellScrollView"]) {
for (UIView *secondSubview in [subview subviews]) {
if ([NSStringFromClass([secondSubview class]) isEqualToString:@"UITableViewCellDeleteConfirmationView"]) {
deleteButtonView = secondSubview;
break;
}
}
}
}
int heightOffset = 5;
CGRect buttonFrame = deleteButtonView.frame;
buttonFrame.origin.y = heightOffset;
buttonFrame.size.height = self.frame.size.height-2*heightOffset;
deleteButtonView.frame = buttonFrame;
}
私は常にセルの contentView に subView のような区切り線を引きます。そしてtableViewでseparatorStyleを無効にします。ここのように削除ボタンをカスタマイズします: https://stackoverflow.com/a/22396248/887325
削除ボタンのサイズを変更できない場合は、下部のサイズを変更して、削除ボタンとUIView重なるようにします。