컴포즈19 [Android-Compose] 안드로이드 컴포즈 Icon vs Image 차이점 / 각 각 컴포저블 함수 알아보기 (Compose Icon, Image) 이번 포스팅은 간단하면서 궁금한 Icon 컴포저블과 Image 컴포저블의 차이점을 알아보겠다! 사실 둘 다 사진을 보여주는 컴포저블이라서 처음에는 어떤 경우에 Icon을 사용하고 어떤 경우에는 Image를 사용하는지 구분이 안 갔다.그래서 이번에 공부하는 겸 작성해보기로 했다.# Icon@Composablefun Icon( painter: Painter, contentDescription: String?, modifier: Modifier = Modifier, tint: Color = LocalContentColor.current.copy(alpha = LocalContentAlpha.current)) {......} 위 코드는 Icon 컴포저블 내부이다. 각 인자 별로 알아보자!위.. 2025. 5. 18. [Android-Compose] 안드로이드 컴포즈 바텀시트 구현해보기! (Android Compose BottomSheet) - ModalBottomSheetLayout, ModalBottomSheet 이번 공부 노트는 안드로이드 컴포즈에서 바텀 시트를 예제를 통해 구현해 보도록 하겠다.구현하는 방법은 ModalBottomSheetLayout, ModalBottomSheet 크게 두 가지가 있다.하나하나씩 알아보자! ※ 본 예제는 MaterialDesign3 기준으로 작성했다.해당 버튼을 누르면 과일 리스트가 바텀시트로 나오는 예제이다.# ModalBottomSheetLayout이 방식은 구버전 API로 콘텐츠와 바텀 시트를 함께 포함하는 레이아웃 컴포넌트이다.일반적으로 화면 전체를 감싸는 방식으로 사용따라서 콘텐츠와 바텀 시트를 함께 포함하고 싶다면 사용 추천! ModalBottomSheetLayout 내부를 살펴보자@Composable@ExperimentalMaterialApifun ModalBot.. 2025. 4. 20. [Compose] 안드로이드 컴포즈 드롭다운 메뉴 만들기 (Android Compose DropdownMenu) - 예제를 통한 사용법 이번 포스팅은 은근 사용 하는 컴포즈의 드롭다운 만드는 법을 작성해 보겠다. 기존 XML에서는 어댑터도 만들고 리스너로 이벤트 처리를 해서 코드가 분산되어 흐름을 한눈에 보기 힘들었다.반면 컴포즈에서는 단일 함수 내에서 완전한 구현이 가능하기 때문에 많이 편리해졌다. 그럼 이제 사용법을 알아보자!# DropdownMenu@Composablefun DropdownMenu( expanded: Boolean, onDismissRequest: () -> Unit, modifier: Modifier = Modifier, offset: DpOffset = DpOffset(0.dp, 0.dp), scrollState: ScrollState = rememberScrollState(), .. 2025. 2. 28. [Android-Compose] Compose 렌더링 단계 알아보기 (Android Compose Rendering) 이번 포스팅은 Compose의 렌더링 단계를 알아보도록 하겠다.# 렌더링 단계우선 위 그림은 안드로이드 공식문서에 있는 렌더링 단계의 그림이다.렌더링 단계는 크게 총 3단계 컴포지션(Composeition), 레이아웃(Layout), 그리기(Drawing)로 나누어져 있다.이제 하나씩 알아가 보자!# 1. 컴포지션 (Composeition) 단계 - What 화면에 뭘 보여 줄지컴포지션 단계에서는 UI 코드를 노드 트리 구조로 변환/만드는 단계이다.해당 트리를 생성하면서 각 UI 컴포넌트의 계층 구조와 속성들을 파악하고 생성된 트리는 2단계인 레이아웃 단계에서 사용이 된다.이제 노드 트리 구조를 어떤 식으로 만드는지 아래 예제를 보자!Column { Image( painter = re.. 2025. 1. 30. [Compose] Button 클릭 시 2번씩 리컴포지션이 일어나는 이유 이번 포스팅은 Compose 스터디 중 어느 스터디원 중 한 분이 말씀하신 부분을 궁금해서 찾아본 결과를 포스팅하겠다.# 구현 상황@Preview@Composablefun AddMemo() { val inputValue = remember { mutableStateOf("") } Row( modifier = Modifier .padding(all = 16.dp) .height(100.dp), horizontalArrangement = Arrangement.End ) { // 임시 TextField TextField( modifier = Modifier .fil.. 2025. 1. 26. [Android] 안드로이드 중요 값 숨기기 - local.properties를 사용하여 키 관리하기 예제(Kotlin) / Unresolved reference: BuildConfig 해결 방법 개발을 하다 보면 API키 값이나 중요 값등을 숨기고 싶을 때가 있다. 그럴 때는 local.properties를 사용하면 간단하게 숨김이 가능하다. 이제 차근차근 알아보자! ✅ 깃을 사용한다면. gitignore에 /build , /local.properties 이 두 가지가 들어가 있다고 가정하고 시작해 보겠다!# 사용방법아래 예제에서는 API_KEY값을 숨기는 예제를 해보겠다.## local.properties 변수 값 설정우선 가장 먼저 해야 할 것은 local.properties파일에 숨기고 싶은 값을 키 - 값 형식으로 작성해 준다. local.properties>API_KEY = "12345678910" ## build.gradle.kts(app) 키 값 불러오기앱 수준의 gradle에서 .. 2024. 8. 31. 이전 1 2 3 4 다음