【问题标题】:UITableView or StackViewUITableView 或 StackView
【发布时间】:2017-03-18 12:27:53
【问题描述】:

我目前正在使用 xcode 中的故事板来设计下面的布局。 整个屏幕是一个带有 2 个不同原型单元格的 tableView。根据可用数据,将创建 2 个单元格之一。

对于第二个单元格,将 tableview 与 Label2 和 img2 放在一起的最佳方式是什么? 我尝试将它放在一个简单的堆栈视图中,其中绘制了 1px 线(一个 UIView),但根据设备屏幕尺寸,这条线看起来更细或更细。

TableView 解决了线条问题,但是对于这样一个简单的布局来说,似乎需要做很多工作。特别是涉及到tableView里面有tableView的时候。

stackview 是这里的路吗?也许我错过了一些导致分隔线在设备上看起来不同的东西?或者是另一种 tableView 更传统的方式吗?

【问题讨论】:

  • 注意:在同一个屏幕上,线条通常看起来更粗或更细。就像前两行没问题,但第三行会更粗。
  • 注2:将线条放在2px高度似乎更均匀。但是 2 px 行的 ui 看起来很糟糕。

标签: swift uitableview storyboard uistackview


【解决方案1】:

我也许可以想到在视图层中使用边框的解决方案:

view.layer.borderColor = UIColor.black.cgColor
view.layer.borderWidth = 1

我真的不知道您的 stackView 是什么样的,但我认为您可以根据自己的情况调整此解决方案 :)

【讨论】:

  • 是的,我给这条线一个恒定的高度 1 px。我什至给单元格设置了 30 像素的恒定高度,但这也无济于事。我怀疑自动布局试图填补单元格内容中的任何差异,但我不确定为什么固定 1px 高度的行会出现任何不同。
【解决方案2】:

嗯,一个非常菜鸟的错误。原来它只是模拟器。 当我在实际设备上使用它时,一切都很好。 在模拟器中,记得将缩放设置为 100%。 (cmd+1/2/3) 否则像这样的细线看起来很不一样。

至于选择的方法,我只是在每个单元格之间使用了 UIView 为 1px 的 stackview。对于这种简单的布局,用数据填充要容易得多。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-30
    • 2017-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多