2017-01-08 1 views
-1

Я использую UITableViewController со статическими ячейками, и я хочу сделать так, чтобы ячейки не занимали весь вид. Я хочу что-то более похожее на это изображение: https://i.stack.imgur.com/4nO09.pngКак добавить отступы влево/вправо от статической ячейки в UITableView swift

Я не могу понять, как это сделать. Я смог изменить высоту благодаря self.tableView.contentInset, но я не уверен, как изменить ширину.

Как мне это сделать?

EDIT:

Вот мой код для Fay007, а также изображение.

import UIKit 

class ContactFormViewController: UITableViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    // Sets the background images 
    if let patternImage = UIImage(named: "Pattern") { 
     view.backgroundColor = UIColor(patternImage: patternImage) 
    } 
} 

override func viewWillAppear(_ animated: Bool) { 
    let numberOfRows: CGFloat = CGFloat(self.tableView.numberOfRows(inSection: 0)) 
    let headerHeight: CGFloat = (self.view.frame.size.height - (self.tableView.rowHeight * numberOfRows))/numberOfRows 

    self.tableView.contentInset = UIEdgeInsetsMake(headerHeight, 0, -headerHeight, 0) 
     } 

http://imgur.com/a/Q2kfH

Первое изображение Я связала имеет свои клетки от левого/правого края, как в моем комментарии Я объяснил, я считаю, что они сделали с помощью autolayout. Поскольку табличное представление является подпунктом UIView UIViewController, я считаю, что можно было бы это заверить. однако при использовании UITableViewController, который необходим для использования статических ячеек в UITableView, родитель UIView отсутствует.

+0

http://stackoverflow.com/a/33931591/2356808 такое же содержание из этого ответа? и он также реализовал решение! – Fay007

+0

Возможный дубликат [Как добавить интервал между UITableViewCell] (http://stackoverflow.com/questions/6216839/how-to-add-spacing-between-uitableviewcell) – Fay007

+0

@ Fay007 Вот где я получил изображение. И это решение решает проблему таким образом, что я не думаю, что это возможно, учитывая, что статические ячейки таблицы должны использовать UITableViewController, а не UIViewController, а также использовать разделы, а не строки. Я могу ошибаться, потому что я пытаюсь понять это, но это решение, похоже, не было ответом, который я искал. Кажется, что исправлены проблемы с высотой, а не проблемы с шириной, которые они просто сделали (предположительно), изменив способ отображения таблицы в UIView. – NappyXIII

ответ

0

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

Чтобы добавить закругленные углы, вы можете сделать это в пределах awakeFromNib, установив для параметра cornerRadius свойства слоя subview требуемый радиус.