如何将填充/边距和边角半径设置为TableView的TableViewCell?

时间:2018-04-27 01:16:45

标签: ios swift xcode uitableview

我有UITableView,我希望设置角半径和上/右/左/下的边距/填充。但是,如果我尝试设置它,我的布局就会变得混乱。并且,当我尝试:cell.cellView.layer.cornerRadius = 20.0触发nil指针异常。

我的布局是这样的:

enter image description here

我喜欢我的布局的例子是:

enter image description here

我希望我的细胞保持“浮动”,角半径和边距,而不会弄乱我的布局。

关于UITableView,我如何删除未使用的单元格?我只有3个单元格,但TableView显示所有单元格可能,其他单元格未使用。

enter image description here

另外(4):为什么我的细胞显得团结?这不会出现“浮动”

enter image description here

2 个答案:

答案 0 :(得分:2)

对于您的需要布局,请执行以下步骤。

  1. UIView cell中添加contentView 前导,顶部,尾随,底部约束。喜欢(15,10,15,10)

  2. 选择UIView并选中Clip to Bounds复选标记。

  3. UIView

  4. 中添加所需的用户界面
  5. UIView文件中的cornerRadius内设置layoutSubviews() cell

  6. 要删除未使用cell,请将此行标记为viewDidLoad - > self.tblVW.tableFooterView = UIView.init(frame: .zero)

    以下是演示链接: https://www.dropbox.com/s/815loyp20r0oetf/Demo.zip?dl=0

答案 1 :(得分:0)

我假设您正在查看所有内容所在的表格视图单元格中。这就是你使用 cell.cellView

的原因

你需要的是,如果你不在的话,也可以添加这一行。

cell.cellView.clipToBounds = true

这应该有用。

如果您未在单元格内容视图中使用 UIView ,请按照以下步骤操作。

  • 从对象库中获取UIView。
  • 在单元格内容视图中提供所需的边距。
  • 在此视图中添加所有必需的UI组件。
  • clipToBounds 设置为true以及 cornerRadius