【问题标题】:How to make horizontal layout that is based on percentage?如何制作基于百分比的水平布局?
【发布时间】:2016-04-22 13:53:27
【问题描述】:

我正在尝试为其中包含多个列/标签的表制作 UITableViewCell。例如第一列是 30%,第二列是 30%,第三列是 40%,无论屏幕大小如何。

我尝试过使用水平堆栈视图并手动添加约束,但它仍然不起作用。

【问题讨论】:

  • 最初听起来您可能想要一个 UICollectionView,您可以在其中根据父视图尺寸设置单元格大小。
  • 当您手动添加约束时,是否类似于columnOnelabel.widthAnchor.constraintEqualToAnchor(cell.widthAnchor, multiplier: 0.30).active = true
  • 不是真的,我只尝试了简单的方法,比如将宽度或间距设置为最近的邻居,直到我发现它还不够,我想我会尝试学习 UICollectionView。

标签: ios swift uitableview uikit


【解决方案1】:

很容易。单元格内将有 3 个 UIView。把第一个放在左边。将顶部、底部和左侧固定到单元格。控制从 UIView 拖动到单元格并选择相等的宽度。这意味着 UIView 宽度将等于单元格宽度。我们不希望这样,但首先你要这样做。

然后,在左侧窗格中选择等宽约束,在右侧窗格中将乘数值从 1 更改为 0.3,即 30%。并重复其他 UIViews。

对于最后一个 UIView,我固定在顶部、底部和右侧,宽度乘数为 0.4,占 40%

然后你把你想要的任何东西放到每个 UIView 中。

【讨论】:

    【解决方案2】:

    这是一个只能由collectionview正确处理的经典场景,您可以通过tableview处理它,但它会非常混乱,因为您必须在cellforrow委托方法中实现多个条件

    【讨论】:

      猜你喜欢
      • 2018-08-15
      • 2012-08-11
      • 1970-01-01
      • 1970-01-01
      • 2015-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-12
      相关资源
      最近更新 更多