【问题标题】:Creating views dynamically with autolayout constraints? in Objective-C?使用自动布局约束动态创建视图?在Objective-C中?
【发布时间】:2016-11-03 06:45:05
【问题描述】:
  • UIStackView(主)
    • UIView(子)
      • UILabel、UIButton 等
    • UIview(子)
    • 可能是其他人的看法

所有这些都以编程方式带有约束。并且可能是 UILabel 的 UIView 或 UIButtons 被创建成循环。一个接一个。

请帮忙!!

【问题讨论】:

  • 为什么不使用UITableViewUICollectionView?它们简化了子视图的创建和布局以及更好的内存使用。它们都是为显示动态子视图计数而设计的。
  • b'coz 我想创建动态。我不知道哪种 UI 类型成为第一个或最后一个。但是每个视图都在它的超级视图中,并且可能是可扩展的。
  • 即使经过您的解释,我也没有理由不使用集合或表格视图。
  • 我的观点不固定,也不固定。这也取决于服务器响应和 UI 类型。
  • 表格和集合视图是为动态数量的子视图设计的,您可以随时更改显示单元格的数量而无需重新加载完整视图。您可以拥有具有完全不同布局的多种单元格类型。如果您的堆栈视图中有太多子视图,您将遇到严重的内存和性能问题,而表格和集合视图将毫无问题地处理大量单元格。

标签: ios objective-c nslayoutconstraint ios-autolayout


【解决方案1】:

如果您想以编程方式创建这些视图,我会推荐这两个库。它们使添加/删除/更新/管理约束变得非常容易。

Objective-c

https://github.com/SnapKit/Masonry

斯威夫特

https://github.com/SnapKit/SnapKit

【讨论】:

    【解决方案2】:

    您可以使用 Apple Native NSLayoutAnchor 以编程方式创建约束。就像 SnapKit/Masonry 一样简单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-28
      • 2016-04-07
      • 1970-01-01
      • 2015-07-20
      • 1970-01-01
      • 2013-12-04
      • 2014-02-06
      • 2017-10-09
      相关资源
      最近更新 更多