Чтобы отобразить пробел между ячейками и избежать проблемы «спина к спине», вы можете добавить UIView
со следующим кадром CGRectMake(0, 0, 320, 1)
и фоном, установленным на светло-серый для стандарта разделитель ячеек или, если вы просто хотите добавить отступ, вы можете сделать фон прозрачным.
Лично мне нравится использовать интерфейсный конструктор, но вы, конечно, можете сделать это программно.
UIView *cellSeparator = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320 ,1)];
[cellSeparator setAutoresizingMask:UIViewAutoresizingFlexibleLeftMargin |
UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleWidth];
[cellSeparator setContentMode:UIViewContentModeTopLeft];
[cellSeparator setBackgroundColor:[UIColor lightGrayColor]];
[cell addSubview:cellSeparator];
[cellSeparator release];
Причина, по которой я установил cellSeparator в верхней части ячейки, заключается в том, что эффект действительно для ячеек, попадающих между первой и последней строками. Также важно установить autoresizingMask и contentMode, чтобы убедиться, что разделитель ячеек корректно корректируется при изменении размера на UITableViewCell
. Если у вас есть какие-либо элементы в ячейке, которые начинаются с x=0 y=0
, вам необходимо переместить их вниз по высоте разделителя ячеек, а также, возможно, некоторые дополнительные пиксели для заполнения, чтобы разделитель не проходил через элементы в ячейке .