Подтвердить что ты не робот

Пробел между ячейками UITableView

У меня есть UITableView, который содержит х количество ячеек. Тем не менее, я хочу иметь 20 пикселей между каждой ячейкой. В моем табличном представлении содержится только один раздел.

Я искал форум и искал форум, но я не мог найти ничего, что сработало бы для моей цели.

Можно ли установить смещение содержимого для ячейки или изображение в ячейке?

Кто-нибудь может помочь мне?

4b9b3361

Ответ 1

Основываясь на последующих комментариях выше, похоже, что вы должны использовать свойство backgroundView UITableView для установки своего пользовательского фонового изображения, а затем использовать сгруппированное представление таблицы с одной ячейкой в ​​каждом разделе. Для меня это звучит как самый быстрый и простой способ реализовать тип пользовательского интерфейса, который вы описываете.

Соответствующие части документации API UITableView:

@property(nonatomic, readwrite, retain) UIView *backgroundView
...
- (NSInteger)numberOfRowsInSection:(NSInteger)section

И протокол UITableViewDataSource:

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

Ответ 2

одно альтернативное решение этой проблемы просто реализует метод tableview: heightForFooterInSection как

-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{

    return 5;
}

И затем реализуем tableView: ViewForFooterInSection, как показано ниже // Возвращает прозрачный нижний колонтитул.

-(UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{ 

    UIView *view = [[UIView alloc]init]; 
    [view setAlpha:0.0F]; 
    return view; 

}

Ответ 3

В UITableViewDelegate добавьте следующий метод:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 

Оттуда вы можете самостоятельно контролировать общую высоту каждой ячейки. Однако не делайте этого для больших столов, поскольку это замедляет работу.