분류 전체보기

    [Compose Text] Text color 바꾸고 투명도 설정하기

    선행지식 [Android Compose Resource] Compose 의 Color 객체 살펴보기 Compose Text 색상 바꾸기 Text의 색상을 바꾸기 위해서는 Text의 color 프로퍼티를 사용한다. Color 객체 직접 생성해서 사용하기 Color은 직접 객체를 생성해서 사용할 수 있다. @Preview(showBackground = true, widthDp = 300, heightDp = 300) @Composable fun KotlinWorldText1() { Column(modifier = Modifier.fillMaxSize(), horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement...

    [Coroutine] Coroutine(코루틴)과 Subroutine(서브루틴)의 차이 - Coroutine이란 무슨 뜻일까?

    루틴이란 무엇인가? 우리는 Routine을 운동 루틴 혹은 공부 루틴과 같은 '특정한 일을 하기 위한 일련의 처리 과정'이란 뜻으로 사용한다. 비슷하게 전통적으로 프로그래밍에서는 루틴을 '특정한 일을 처리하기 위한 일련의 명령'으로 사용해 왔다. 실제로 구글에 routine을 찾으면 아래와 같이 나온다. 루틴(Routine)이란 컴퓨터 프로그램의 일부로써 특정한 일을 실행하기 위한 일련의 명령이다. 우리는 프로그래밍에서 이러한 일련의 명령을 함수라 부른다. 자 이제 서브루틴(Sub-Routine)에 대해 알아볼 준비가 되었다. 서브루틴이란 무엇인가? 프로그래밍에서는 함수 안에 함수가 있을 경우 바로 안쪽의 함수를 서브루틴이라 부른다. 예를 들어 아래와 같은 코드가 있다고 해보자. fun routine1(..

    [Android Compose Resource] 2. Compose 의 Color 객체 살펴보기

    Compose의 Color객체 기존 안드로이드에서는 Color을 기본적으로 resource폴더의 color.xml상에 정의해놓고 사용했다. 물론 Color가 직접 객체로 설정되는 경우도 있었지만 거의 사용되지 않았다. Compose에서는 더이상 Color을 xml에 정의하지 않는다. Compose에서는 Color을 Color객체로 생성해놓고 사용한다. 자 아래에서 Compose에서 Color을 어떻게 표현하는지 살펴보자. 16진수로 표현하는 Android Compose의 Color 시스템 @Stable fun Color(color: Long): Color { return Color(value = (color.toULong() and 0xffffffffUL) shl 32) } Compose의 Color 시..

    [Android Compose Resource] 1. Android Compose에서 FontFamily 만들기. - Text에 Font 적용시키기

    FontFamily란? FontFamily란 같은 폰트의 모음으로 같은 폰트에 대해 다양한 스타일(굵기)을 포함하는 번들을 뜻한다. Compose에서 FontFamily 만들기 기존 xml 기반의 안드로에서 리소스 시스템에서는 xml에 모든 리소스를 정의했는데 FontFamily도 그 중 하나였다. 하지만, Compose에서는 Color, Shape,Theme, Type에 이어 FontFamily 리소스 또한 코드 상에서 정의하기 때문에 기존과 정의 방식이 달라졌다. 따라서 이번 글에서는 변경된 방식에 맞게 FontFamily를 정의하는 방법을 설명하고자 한다. 준비사항 Compose에서 FontFamily를 만들기 위해서는 2가지 준비사항이 필요하다. Font 다운로드 Android Project에 f..

    [Android Compose Lists] 2. Compose LazyColumn을 이용해 RecyclerView 만들기 + item, items, itemsIndexed사용법 정리

    LazyColumn이란? LazyColumn은 화면에 보여지는 컴포저블만을 표시하는 scrollable한 Column이다. LazyColumn은 화면에 보여지는 컴포저블만을 표시하기 때문에 화면 로딩 시간을 최적화 시킬 수 있어 많은 아이템이 표시되어야 할 경우 필수적으로 사용되어야 하는 레이아웃이다. LazyColumn의 item으로 사용할 컴포저블 정의 LazyColumn을 사용하기 위해서 먼저 LazyColumn의 item으로 사용할 컴포저블을 정의하자. Text를 Card로 감싼 간단한 컴포저블이다. @Composable fun KotlinWorldCard(order: Int) { Card( Modifier .padding(12.dp) .border(width = 4.dp, color = Colo..