본문 바로가기
iOS/iOS

[iOS] UILabel

by 원만사 2021. 11. 28.
반응형

UILabel

 한 줄 이상의 정보 텍스트를 표시하는 view

@MainActor class UILabel : UIView

 Label 텍스트의 전체 모양을 구성하고, attributed 문자열을 사용하여 텍스트 내에서 substring의 모양을 사용자 정의할 수 있다. 

 

Label의 형태 커스터마이즈

 NSString 객체를 text 속성에 할당하거나 NSAttributedString 객체를 attributedText 속성에 할당하여 Label의 컨텐츠를 제공한다. Label에 가장 최근에 설정된 속성이 표시된다.

 

 attributedText 속성은 NSAttributedString API를 사용하여 개별 문자 및 문자 그룹의 모양을 제어할 수 있다. 아래의 사진은 문자열의 글꼴, 색상 및 정렬을 사용자 정의하는 속성을 포함하는 NSAttributedString을 표시하는 Label을 보여준다.

Figure 1

 Label의 텍스트를 통일성있게 지정하려면 font, textColor, text Alignment, lineBreakMode 속성을 포함하는 NSString 객체로 text 속성을 설정하자. 아래의 사진은 사용자 정의 글꼴, 색상 및 정렬이 된 NSString을 표시하는 Label을 보여준다.

Figure 2

 

 attributedText 속성의 내용을 표시하는 Label에 이러한 모양 속성을 설정하면 Label은 해당 속성을 재정의하고 attributed 문자열을 균일한 모양으로 표시한다. 아래의 사진은 Figure1에 textColor를 green으로 설정했을 때의 모습이다.

Figure 3

 numberOfLines 속성을 사용하여 문자를 배치할 때 사용할 Label의 최대 줄 수를 지정한다. 값을 0으로 설정하면 Label은 Label 너비 내에 텍스를 배치하는 데 필요한 만큼의 줄을 사용할 수 있다. lineBreakMode 속성을 사용하여 Label이 문자를 여러 줄로 분할하는 방법 및 마지막 줄과 관련된 잘라내기 동작을 제어할 수 있다.

 

 오토 레이아웃을 사용하여 Label의 위치를 지정하고 선택적으로 크기를 설정한다. Label의 내부 내용 크기는 기본적으로 내용 전체를 한 줄에 표시하는 크기로 설정된다. Label의 width를 정의하지만 height는 정의하지 않는 오토 레이아웃 조건을 제공하는 경우 Label의 고유 내용 height를 조정하여 텍스트를 완전히 표시한다.

 

 Label의 크기가 외부에서 완전히 정의된 경우, 내용이 경계 내에 맞지 않을 때 상황을 처리하는 방법을 지정할 수 있다. font 사이즈를 줄이려면, adjustsFontSizeToFitWidth 속성을 true로 설정하고 minimumScaleFactor 속성을 0과 1사이의 값으로 설정한다. minimumScaleFactor 속성은 요청된 font 사이즈보다 label이 얼마나 더 작게 텍스트 크기를 조정하는지를 나타낸다. allowDefaultTighteningForTruncation 속성을 true로 설정하면 문자열을 자르기 전에 label에 문자 사이의 간격을 줄이도록 지시한다. 아래의 사진은 minumumScaleFactor와 adjustsFontSizeToFitWidth을 사용한 label이 오버플로되었을 전체 문자열의 내용을 표시하는 것을 보여준다.

 

 

참고

- https://developer.apple.com/documentation/uikit/uilabel

 

 

반응형

'iOS > iOS' 카테고리의 다른 글

[iOS] iOS의 화면 전환 - View Controller 호출 전환 (1/3)  (0) 2021.12.03
[iOS] Cocoa Touch 프레임워크  (0) 2021.11.28
[iOS] UISlider  (0) 2021.11.28
[iOS] UIButton  (0) 2021.11.28
[iOS] @IBOutlet과 @IBAction  (0) 2021.11.22

댓글