Как найти доступные варианты для anchorType в swift?

Как новичок я пытаюсь научиться правильно ориентироваться в документации Apple API, изучая учебное пособие в качестве помощи. Следуя примеру программных ограничений, я наткнулся на следующий метод:

let leadingConstraint = segmentedControl.leadingAnchor.constraint(equalTo: <NSLayoutAnchor<NSLayoutXAxisAnchor>)

Я узнал, что угловые скобки означают общее. Однако на это намекает Apple, используя угловые скобки в этой ситуации? При поиске документации по NSLayoutAnchor я не смог найти "topAnchor", подобный тому, который имеет следующий код:

let topConstraint = segmentedControl.topAnchor.constraint(equalTo: view.topAnchor)

Как я могу узнать, какие варианты для универсального типа называется "AnchorType"? Или я неправильно смотрю на контекст?

Заранее спасибо.

1 ответ

Первый пример, который вы приводите, - неверный код (например, отсутствие сбалансированных угловых скобок). Тем не менее, я думаю, что понимаю, что это может пытаться объяснить.

Документация Apple для NSLayoutXAxisAnchor (см. https://developer.apple.com/documentation/uikit/nslayoutxaxisanchor) пример, аналогичный вашему второму.

В этой документации объясняется, что типы анкеров должны совпадать. В соответствии

cancelButton.leadingAnchor.constraintEqualToAnchor(saveButton.trailingAnchor, constant: 8.0).active = true

и то и другое leadingAnchor а также trailingAnchor Якоря оси X и код хороший.

Во втором примере

cancelButton.leadingAnchor.constraintEqualToAnchor(saveButton.topAnchor, constant: 8.0).active = true

topAnchor является якорем оси Y, поэтому генерируется предупреждение.

NSLayoutXAxisAnchor происходит от NSLayoutAnchorтак что я думаю, что первый пример, который вы приводите, это попытка донести мысль о том, что параметр должен быть NSLayoutAnchor это на самом деле NSLayoutXAxisAnchor,

Документация для NSLayoutAnchor (см. https://developer.apple.com/documentation/uikit/nslayoutanchor) дает следующие возможности:

  • NSLayoutXAxisAnchor
  • NSLayoutYAxisAnchor
  • NSLayoutDimension
Другие вопросы по тегам