я пытаюсь выполнить следующую задачу, которая отображается со следующим изображениемКак выровнять несколько элементов к одному основному элементу со строками формата в быстрой
Это то, что я имею, насколько ограничения идут до сих пор, Строка «Развлечения» представлена categoryLabel и «Disney: build it frozen» от nameLabel.
addConstraints(withFormat: "H:|-8-[v0(90)]-8-[v1]-8-|", views: imageView, nameLabel)
addConstraints(withFormat: "V:|-8-[v0(90)]", views: imageView)
addConstraints(withFormat: "H:[v0]-8-[v1]", views: imageView, nameLabel)
addConstraints(withFormat: "V:|-8-[v0]-8-[v1]", views: nameLabel, categoryLabel)
func addConstraints(withFormat format: String, views: UIView...) {
var viewsDictionary = [String: UIView]()
for (index, view) in views.enumerated() {
let key = "v\(index)"
view.translatesAutoresizingMaskIntoConstraints = false
viewsDictionary[key] = view
}
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: format, options: NSLayoutFormatOptions(), metrics: nil, views: viewsDictionary))
}
Проблемы я имею, как добавить «categorylabel» с ограничениями, таким образом, чтобы оно располагались в правую части ImageView на 8 пикселей и непосредственно под nameLabel на 8 пикселей. Как вы можете видеть на скриншоте, я могу добиться его размещения под именемLabel, но мне трудно сделать так, чтобы «categorylabel» также находилась справа от изображения.
Любые советы будут очень высоко ценится :)
То, что я хочу, чтобы это выглядело как
Есть ли причина, по которой вы это программируете? Возможно, вам будет проще прояснить это, используя 'UIStackView'. https://www.raywenderlich.com/114552/uistackview-tutorial-introducing-stack-views. Он доступен от iOS 9 и более поздних версий. – Adrian
Спасибо за головы, но так же просто, как эта задача будет делать это через раскадровки, но я пытаюсь добиться этого программным путем. –
Не могли бы вы представить картину того, как ее искать? – matt