Text Label에 2줄 입력이 안되는 문제 해결하기
⎮ 스토리보드에서 해결하기
1. 스토리보드에 Label Inspector에 접근해서 Lines의 개수 수정
2. 스토리보드에서 Label 크기 조정
3. 코드 작성
class ViewController: UIViewController {
@IBOutlet weak var nameLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
getName()
}
func getName() {
nameLabel.text = "안녕하세요. \n반갑습니다."
}
}
4. 결과 확인
⎮ 코드로 해결하기 : numberOfLines로 해결하기
1. 스토리보드 인스펙터의 lines 숫자 0으로 설정되었는지 확인
2. 코드 작성
class ViewController: UIViewController {
@IBOutlet weak var containerView: UIView!
@IBOutlet weak var nameLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
getName()
}
func getName() {
nameLabel.text = "안녕하세요.\n반갑습니다."
nameLabel.numberOfLines = 2 // 추가된 코드
}
}
3. 결과 확인
만약 위의 예시처럼 numberOfLines 코드를 작성했는데,
그래도 안된다면 무엇을 확인해야할까?
⎮ Label 크기 확인하기
일단 나는 코드베이스로만 프로그래밍하는 것이 어려워서,
스토리보드와 코드를 병행하여 사용하고 있는데
지금의 내가 가장 많이 하는 실수는 다음과 같다.
제약에 대한 원리를 정확하게 이해하지 못했어서
제약을 추가하면서 Label의 크기가 고정되었는데 이를 인지하지 못했다.
다시 말하자면, 위 아래의 제약을 추가하면서 Label의 높이가 정해졌는데
작아진 Text Box에 2줄 쓰기를 하려고 하니까 표시가 되지 않는 것이었다.
결론적으로는 Label의 크기가 2줄로 들어갈 수 있는 크기인지만 확인하면 된다.
Label의 크기가 표시하고자 하는 글자보다 작으면 2줄로 표시가 안될 수도 있다.
위와 같이 코드에는 numberOflines를 잘 작성하였지만,
Label의 제약을 잘못 추가하면 Label의 크기가 표시하고자 하는 글자 영역보다 작아서,
2줄로 나오지 않을 수 있다.
제약을 바꿔서 영역을 늘려주었더니, 2줄 쓰기가 잘 되는 것을 확인할 수 있었다.
'Swift > 오류 개발자' 카테고리의 다른 글
Swift | SnapKit no such file or directory 오류 (2) | 2025.03.18 |
---|---|
Swift | TableView에서 특정 영역만 선택이 가능하도록 만들기 (0) | 2025.03.09 |
Swift | TableView에서 Row 사이의 여백 만들기 (0) | 2025.03.09 |
Swift | TableView Cell에서 ImageView 또는 Label 연결이 안되는 문제 (0) | 2025.03.08 |
Swift | UIButton의 속성이 적용이 안되는 문제 해결하기 (0) | 2025.03.06 |