
Text 객체는 이제보니 기존 TextView와 일맥상통한 면이 있다. TextView도 상당히 속성이 많았는데 아니나다를까 Text 객체 또한 그렇다. 이거 조금씩 써 보면서 아무리 생각해도 기존 xml로 UI 짜는 게 훨씬 쉬운 것 같은데 Jetpack Compose를 하는 게 맞을까 현타온다.
Text를 전체로 풀어보면 이렇다.
text: String / Text 객체의 내용
modifier: Modifier / 나중에 정리해야겠지만 일단 레이아웃을 설정한다. padding, width, height 설정 가능한 듯
color: Color / 이건 그냥 컬러
fontSize: TextUnit / 글자 크기
fontStyle: FontStyle / 글자 스타일. 아마 Bold Italic인 듯
fontWeight: FontWeight / 폰트 굵기
fontFamily: FontFamily / 폰트 타입
latterSpacing: TextUnit / 자간
textDecoration: TextDecoration / 뭘까
textAlign: TextAlign / 텍스트 정렬. Left Center Right
lineHeight: TextUnit / 줄높이
overflow: TextOverflow / 텍스트 넘치게?
maxLines: Int / 최대 줄 갯수
inlineContent: Map<String, InlineTextContent>
onTextLayout: (TextLayoutResult) -> Unit
style: TextStyle

@Composable
fun defaultScreen() {
Column {
Text(
text = "First Text",
color = Color.Magenta,
fontStyle = FontStyle.Italic,
fontSize = 24.sp
)
Text("Second Text")
Text("Third Text")
}
}
android:layout_margin은 Modifier를 통해서 줄 수 있었다.
예를 들어 상하좌우 margin 16dp를 주려면 원래는 android:layout_margin="16dp"였다면 Jetpack Compose로는 이렇게 표현하면 된다고 한다.
modifier = Modifier.padding(16.dp)
Modifier는 나중에 심층적으로 공부를 해야 할 것 같고 TextView를 담당하는 Text는 이 정도로 정리하면 될 것 같다.
'안드로이드 개발 > 📚 Compose 공부' 카테고리의 다른 글
Flutter VS Compose - 01 (0) | 2024.08.10 |
---|---|
#01 안드로이드 Jetpack Compose 시작 (0) | 2020.08.14 |