代码之家  ›  专栏  ›  技术社区  ›  Prabhav

iOS 11之前的前导或尾随水平对齐

  •  64
  • Prabhav  · 技术社区  · 7 年前

    警告: leading or trailing horizontal alignment before iOS 11

    (部署目标为iOS 10.0) 然而,警告会在特定的故事板文件中显示给这个特定的场景。

    如果我在显示警告的场景中将部署目标更改为iOS 11.0,警告将被抑制,但我不想这样做。

    有人遇到过这个案子吗?

    4 回复  |  直到 7 年前
        1
  •  133
  •   Grzegorz Krukowski    6 年前

    trailing leading 对齐打开 UIButton 它本身

    但这项功能仅适用于iOS 11,因此如果您的目标是较低的iOS版本,请使用标准的左/右对齐方式。

    找出导致问题的视图的最简单方法是搜索 contentHorizontalAlignment="leading" contentHorizontalAlignment="trailing" 在的源代码中。xib公司

    enter image description here

        2
  •  41
  •   etayluz    6 年前

    第1步:

    将您的冒犯情节提要视为源代码: enter image description here

    第2步:

    替换以下对象的所有实例:

    contentHorizontalAlignment="leading"

    使用:

    contentHorizontalAlignment="left"

    第3步:

    替换以下对象的所有实例:

    contentHorizontalAlignment="trailing"

    使用:

    contentHorizontalAlignment="right"

    第4步:

    编译并观察警告消失。

    我发现,当有大量需要修改的元素时,这种方法更容易实现。 iOS 11引入了“leading”和“trailing”作为“contenthorizontallignment”值类型。iOS 10不知道“领先”和“落后”是发出警告的原因。

        3
  •  2
  •   Eric Aya    6 年前

    在构建日志中,就在单词“warning”之前,您将看到一个界面生成器标识符,格式为“xxx yy zzz”。复制并粘贴到Xcode搜索栏,它会为您找到“冒犯”的控件。单击搜索结果,它将带您进入故事板,并选择相应的控件。剩下的问题可以用其他答案解决。

        4
  •  0
  •   user462990    5 年前

    我有一大堆按钮的问题,我需要左对齐一点偏移。我删除了故事板对齐方式,并在viewDidLoad中使用了一系列需要的按钮。

    func indentButtons(buttons: [UIButton?]){
        for i in 0..<buttons.count{
            buttons[i]!.contentHorizontalAlignment = .left
            buttons[i]!.titleEdgeInsets = UIEdgeInsetsMake(0, 5, 0, 0)
        }
    }