UIView에 identifier를 추가하면 Constraint log를 조금 더 쉽게 볼 수 있습니다.
Code로는 어떻게 추가할 수 있는 지 알아보겠습니다.
private let button: UIButton = {
let button = UIButton()
button.setTitle("Button", for: .normal)
button.backgroundColor = .systemBlue
//accessibilityIdentifier & isAccessibilityElement 설정!
button.accessibilityIdentifier = "button"
button.isAccessibilityElement = true
button.translatesAutoresizingMaskIntoConstraints = false
return button
}()
accessibilityIdentifier에 원하는 identifier를 String type으로 설정해주고 isAccessibilityElement를 true로 설정해줍니다.
제대로 설정이 되었는지 확인 하는 방법 중에는 project run 상태에서 view hierarchy 화면으로 들어간 뒤 오른쪽 판넬에서 보는 방법이 있습니다.
위에서 button의 identifier를 "button"으로 설정해 주었는데, 위 사진을 보면 잘 설정된 것을 확인할 수 있습니다.
필요시 viewDidLayoutSubviews 내에 constraintsAffectingLayout(for:)를 호출하여 constraint 로그를 확인할 때 유용하게 사용될 수 있습니다.
constraintsAffectingLayout(for:)를 호출한다고 해서 view에 영향을 주는 모든 constraints들이 다 로그되는 것은 아니지만, 필요 시에 사용해 볼 수 있을 것 같습니다.
참고자료
https://developer.apple.com/forums/thread/31294
반응형
'Swfit' 카테고리의 다른 글
Semantic Versioning - 버전 정하는 방식 (0) | 2023.01.15 |
---|---|
Missing package product <package name> 에러 해결 방법 (0) | 2023.01.14 |
APNs에 대해서 알아보기! (0) | 2023.01.05 |
iOS Device resolution (0) | 2023.01.04 |
Apple 인증서 종류 (0) | 2023.01.04 |