【问题标题】:XCODE 11, SWIFT 5. Drawing Lines, Boxes etcXCODE 11、SWIFT 5。画线、框等
【发布时间】:2020-07-16 17:52:12
【问题描述】:

我最近切换到 Xcode 11 和 Swift 5。我也将整个项目从 UISwift 切换到 Storyboard,因为我读到它有很多优势。

现在我发现了缺点,我不能在我的故事板上画框/线,我可以使用代码来完成,但是在故事板和元素约束中对我的项目进行更改会产生更多问题。

有谁知道是否可以在文本之间绘制背景框/线条?在某些情况下,我有 6 个标签都可以放在一个盒子下,所以我不能使用标签背景功能。

请参阅下面的灰色框的在线示例

【问题讨论】:

    标签: xcode storyboard uistoryboard swift5 xcode11


    【解决方案1】:

    现在我发现缺点,我不能在我的故事板上画框/线

    情节提要编辑器不是绘图程序——它主要用于布置视图并将它们相互连接并连接到其他对象,例如视图控制器。如果你试图用它来画线和框,那你就找错树了。

    故事板编辑器可以让您配置您创建的视图,例如,您可以设置 UIImageView 显示的图像,或标签中显示的文本,或任何视图的背景颜色.您的示例中的灰色框很容易通过将视图的背景颜色设置为灰色来实现。或者更好的是,使用表格来显示这些视图,然后programmatically set the background color of the cells depending on their row

    有谁知道是否可以在文本之间绘制背景框/线条?

    有一些 hacky 选项。例如,您可以非常轻松地创建一个通过其中心点绘制水平或垂直线的视图类,或者创建一个围绕框的周边绘制一条线的视图类。 (实际上,您可以使用键值编码在视图层上设置属性来执行此操作even without creating a subclass,但这并不是您每次需要框时都必须做的事情。)这些对于偶尔使用来说很好,但如果您有任何复杂的绘图要做,可能是时候编写一个在代码中绘制必要内容的视图类了。

    在某些情况下,我有 6 个标签会全部放在一个盒子下,所以我不能使用标签背景功能。

    这 6 个标签应该都包含在另一个视图中,因此您只需为包含它们的视图设置背景颜色。同样,从您的示例中,看起来这些是表中的行。表格中的每一行都是它自己的视图(或“单元格”),在配置该单元格中的其余子视图的相同代码中设置背景颜色很容易。

    【讨论】:

      猜你喜欢
      • 2020-07-28
      • 2019-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-27
      • 2020-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多