[Auto Layout] 제한된 콘센트 연결[Xcode8.x]
코드에서 제약을 사용하는 간단한 설명
노란색 레이블의 가로 치수와 슈퍼 뷰 사이의 위쪽 경계를 처리하고 있습니다.녹색 레이블은 노란색 레이블의 여백 및 사각형 Bottom과 지정되므로 노란색 레이블의 이동과 함께 이동합니다.
ViewController.swift
//
// ViewController.swift
// Constraint
//
import UIKit
class ViewController: UIViewController {
var toggle1:Bool = true
var toggle2:Bool = true
var toggle3:Bool = true
@IBOutlet weak var label1:UILabel!
@IBOutlet var constraintLabelWidth:NSLayoutConstraint!
@IBOutlet var constraintLabelTopMargin:NSLayoutConstraint!
@IBAction func changeConstraint(_ sender:UIButton){
toggle1 = toggle1 ? false : true
let value:CGFloat = toggle1 ? 100 : -100
constraintLabelWidth.constant += value
}
@IBAction func changeConstraintWithAnimation(_ sender:UIButton){
toggle2 = toggle2 ? false : true
let value:CGFloat = toggle2 ? 100 : -100
self.view.removeConstraint(constraintLabelWidth)
constraintLabelWidth.constant += value
label1.addConstraint(constraintLabelWidth)
UIView.animate(
withDuration: 1.0,
delay:0.5,
options:UIViewAnimationOptions.curveEaseOut,
animations: {() -> Void in
self.view.layoutIfNeeded()
},
completion: nil
)
}
@IBAction func changeConstraintTopMarginWithAnimation(_ sender:UIButton){
toggle3 = toggle3 ? false : true
let value:CGFloat = toggle3 ? 100 : -100
self.view.removeConstraint(constraintLabelTopMargin)
constraintLabelTopMargin.constant += value
view.addConstraint(constraintLabelTopMargin)
UIView.animate(
withDuration: 0.5,
delay:0.0,
options:UIViewAnimationOptions.curveEaseOut,
animations: {() -> Void in
self.view.layoutIfNeeded()
},
completion: nil
)
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
출구 조작 연결Reference
이 문제에 관하여([Auto Layout] 제한된 콘센트 연결[Xcode8.x]), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/fromage-blanc/items/590160ab07728a4a41e8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)