2014-02-11 5 views
1

Можно ли сделать расстояние между ячейками, как в стандартном UITableView? Нет никаких возможностей сделать разделитель больше. Также это расстояние справа и слева.Как сделать UITableView выглядит так:

enter image description here

+0

вам нужен пользовательский вид разделителя. попробуйте выполнить поиск. – Pawan

ответ

6

вы можете сделать это с помощью набора мобильных фона на то, что фон вы хотите (скажем, серый в данном случае) и в клетке, добавить белый UIView с левой, правой, и нижнюю границу, как это:

enter image description here

Затем перейдите в виде таблицы, установите разделитель, как ни

enter image description here

и последний шаг, установить фон вашего представления таблицы в том же сером фоне, как свой мобильный ,

enter image description here

Тогда вам не нужно ничего делать, особенно в вашем коде, кроме просто парафировать вашу ячейку таблицы на основе пользовательского файл СИБ (я предполагаю, что вы хотите сделать это в любом случае).

Если вы предпочитаете строить свою ячейку в кодах, вы можете использовать ту же логику.

0

Одним из способов было бы установить backgroundView в UITableViewCell с UIImageView, содержащего этот белый квадрат на этом сером фоне

1

в методе:

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

    ... 

    cell.backgroundColor = [UIColor whiteColor]; 

    // This will create a line of 3 pixels that will be separating the cells 
    UIView *separator = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,3)]; 
    separator.backgroundColor = [UIColor darkGrayColor]; 
    [cell.contentView addSubview: separator]; 

    // and if you want the border do left and right add: 
    UIView *separatorRx = [[UIView alloc] initWithFrame:CGRectMake(318,0,2,cell.frame.size.height)]; 
    separatorRx.backgroundColor = [UIColor darkGrayColor]; 
    [cell.contentView addSubview: separatorRx]; 

    UIView *separatorSx = [[UIView alloc] initWithFrame:CGRectMake(0,0,2,cell.frame.size.height)]; 
    separatorSx.backgroundColor = [UIColor darkGrayColor]; 
    [cell.contentView addSubview: separatorSx]; 

    return cell; 

} 

enter image description here

0

Вы должны сделать подкласс UITableViewCell. В своем подклассе вы можете сделать все, о чем мечтаете! Итак, вы должны добавить UIView с фоном и полями whiteColor как подзаголовок на вашем обычном UITableViewCell.

0

В опции UITableView опций нет. Вы можете либо добавить UIView в свой UITableViewCell, который будет содержать все подзоны ячеек, и изменить его фрейм, чтобы создать прописку справа в ячейке.

Вместо этого вы можете использовать UICollectionView, вы можете легко установить пространство между ячейками с помощью макета. Если ячейка меньше фактической коллекции, то она автоматически центрируется.

Смежные вопросы