swiftui Text

quokka·2021년 2월 2일
0

SwiftUI

목록 보기
1/4

SwiftUi에서 Text가 예상한대로 나오게 하고싶을때 lineLimit, multilineTextAlignment, fixedSize를 잘 활용하시면 됩니다 ㅎㅎ

lineLimit()

// 라인제한없음
Text("ㅎㅇ").lineLimit(nil) 
// 라인 제한 2줄
Text("ㅎㅇ").lineLimit(2) 

multilineTextAlignment()

// 2째줄부터 나오는거 alignment trailing으로 줄수있음
Text("ㅎㅇ").multilineTextAlignment(.trailing) 

fixedSize()

// Text가 길어질수록 가로, 세로 Text frame크기에 맞게 계속 늘어남, 다른뷰를 침범할수도 있다.
Text("ㅎㅇ").fixedSize()
// Text가 길어질때 가로로 Text frame 길어지는거 허용함-> Text가 길어질수록 가로로 늘어난다
Text("ㅎㅇ").fixedSize(horizontal: true, vertical: false)
// Text가 길어질때 세로로 Text frame 길어지는거 허용함 -> Text가 길어질수록 세로로 늘어난다
Text("ㅎㅇ").fixedSize(horizontal: false, vertical: true)

응용

// Text가 길어지면 라인(줄)제한없이, width 100에 맞춰서 2번째라인부터 정렬 trailing으로 하면서 세로로 길게 만든다.
Text("안녕하세요반갑습니다안녕하세요반갑습니다안녕하세요반갑습니다")
.lineLimit(nil)
.multilineTextAlignment(.trailing)
.frame(width: 100)
.fixedSize(horizontal: false, vertical: true)

📒 Reference

https://swiftwithmajid.com/2020/04/29/the-magic-of-fixed-size-modifier-in-swiftui/

profile
iOS를 공부하는 개발자입니다~ㅎㅎ

0개의 댓글