Skip to content

Instantly share code, notes, and snippets.

@umireon
Created November 11, 2016 09:39
Show Gist options
  • Save umireon/25c4ffb2d151724ddab13275827648f0 to your computer and use it in GitHub Desktop.
Save umireon/25c4ffb2d151724ddab13275827648f0 to your computer and use it in GitHub Desktop.
let attrs: [NSLayoutAttribute: String] = [.left: "left", .right: "right", .top: "top", .bottom: "bottom", .leading: "leading", .trailing: "trailing", .width: "width", .height: "height", .centerX: "centerX", .centerY: "centerX", .lastBaseline: "lastBaseline", .firstBaseline: "firstBaseline", .notAnAttribute: "notAnAttribute"]
let rels: [NSLayoutRelation: String] = [.lessThanOrEqual: "lessThanOrEqual", .equal: "equal", .greaterThanOrEqual: "greaterThanOrEqual"]
for (i, v) in view.constraints.enumerated() {
Swift.print("===", i, "===")
Swift.print("item:", v.firstItem.map{ Mirror(reflecting: $0).subjectType } as Any)
Swift.print("attribute:", attrs[v.firstAttribute]!)
Swift.print("relatedBy:", rels[v.relation]!)
Swift.print("toItem:", v.secondItem.map{ Mirror(reflecting: $0).subjectType } as Any)
Swift.print("attribute:", attrs[v.secondAttribute]!)
Swift.print("multiplier:", v.multiplier)
Swift.print("constant:", v.constant)
Swift.print("priority:", v.priority)
Swift.print("")
}
Swift.print("=== content hugging priority ===")
Swift.print("horizontal:", view.contentHuggingPriority(for: .horizontal))
Swift.print("vertical:", view.contentHuggingPriority(for: .vertical))
Swift.print("=== content compression resistance priority ===")
Swift.print("")
Swift.print("horizontal:", view.contentCompressionResistancePriority(for: .horizontal))
Swift.print("vertical:", view.contentCompressionResistancePriority(for: .vertical))
Swift.print("")
Swift.print("intrinsicContentSize:", view.intrinsicContentSize)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment