분류 전체보기 (24) 썸네일형 리스트형 [Android] Recomposition / State Management (Jetpack Compose) 1. Recomposition(재구성)Recomposition은 Compose가 화면을 다시 그리는 과정특정 State(상태)가 변경될 때, Compose는 필요한 UI 요소만 다시 그린다.전체 UI를 다시 그리는 것이 아닌, 변경된 부분만 재구성하기 때문에 효율적이다. 동작 과정UI를 구성하는 Composable 함수가 호출됨UI에서 사용하는 State 값이 변경됨Compose는 변경된 State를 감지하고 해당 Composable을 다시 호출변경되지 않은 Composable은 재구성되지 않는다. Recomopsition 예제@Composablefun Counter() { var count by remember { mutableStateOf(0) } // 상태 저장 Column { .. [Android] Retrofit2 사용법 (Jetpack Compose) 1. Retrofit2 의존성 추가dependencies { implementation("com.squareup.retrofit2:retrofit:2.9.0") // Retrofit 기본 라이브러리 implementation("com.squareup.retrofit2:converter-gson:2.9.0") // JSON 변환을 위한 Gson 컨버터 implementation("com.google.code.gson:gson:2.10") // Gson 라이브러리 implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4") // 코루틴 지원} 2. Retrofit 인터페이스(API 서비스) 생성 API 응답 데이터 .. [Android] Animation 사용법 (Jetpack Compose) 정리animate*AsState → 값 변화에 따라 애니메이션 적용updateTransition → 여러 애니메이션을 동시에 적용AnimatedVisibility → UI 요소의 등장/사라짐 애니메이션rememberInfiniteTransition → 무한 반복 애니메이션animateContentSize → 크기 변화 애니메이션 1. animate*AsState값이 변경될 때 자동으로 애니메이션을 적용하는 방법@Composablefun AnimatedSizeBox() { var isExpanded by remember { mutableStateOf(false) } val size by animateFloatAsState( targetValue = if (isExpanded).. [Android] MaterialTheme 사용법 (Jetpack Compose) MaterialTheme 기본 사용법MaterialTheme는 Compose에서 UI를 감싸는 컨테이너 역할을 한다. @Composablefun MyApp() { MaterialTheme { // 여기에 앱의 UI를 구성 Surface( modifier = Modifier.fillMaxSize(), color = MaterialTheme.colorScheme.background ) { Text( text = "Hello, Material Theme!", color = MaterialTheme.colorScheme.primary, .. [Android] Navigation 사용법 (Jetpack Compose) Navigation 원리기본적으로 Navigation은 Stack 기반으로 동작한다.즉, 한 화면에서 다른 화면으로 이동하면, 새로운 화면이 스택에 추가(Push) 되고, 뒤로 가기(Back)를 하면 스택에서 제거(Pop) 된다. 구성요소 NavController: 네비게이션을 담당하는 컨트롤러.NavHost: 화면을 이동할 때 사용되는 컨테이너.NavGraph: 화면(경로)과 그 관계를 정의하는 역할.Composables: 각각의 화면을 나타내는 함수. NavGraphNavGraph는 앱에서 어떤 화면들이 있고, 그 화면들이 어떻게 연결되는지를 정의하는 구조이다.일반적으로 NavHost 안에서 NavGraph를 설정하게 된다. Navigation 기본 사용법NavController 생성NavHost .. [Android] Slider 사용법 (Jetpack Compose) Slider 기본 사용법@Composablefun BasicSlider() { var sliderPosition by remember { mutableStateOf(0f) } Column( modifier = Modifier.padding(16.dp), horizontalAlignment = Alignment.CenterHorizontally ) { Text(text = "현재 값: ${sliderPosition.toInt()}") Slider( value = sliderPosition, onValueChange = { sliderPosition = it }, valueRange .. [Android] Switch 사용법 (Jetpack Compose) Switch 기본 사용법@Composablefun SwitchExample() { var isChecked by remember { mutableStateOf(false) } Switch( checked = isChecked, onCheckedChange = { isChecked = it } )} remember { mutableStateOf(false) } → isChecked 상태를 저장하고 관리checked = isChecked → 현재 Switch의 상태 설정onCheckedChange = { isChecked = it } → Switch를 클릭할 때 상태 변경 Switch에 Modifier 적용@Composablefun StyledSwitch() { .. [Android] Checkbox 사용법 (Jetpack Compose) Checkbox 기본 사용법Checkbox는 checked 상태와 onCheckedChange 콜백이 필요하다.@Composablefun SimpleCheckbox() { var checked by remember { mutableStateOf(false) } Checkbox( checked = checked, onCheckedChange = { checked = it } )} checked : 체크 여부 (true = 체크됨, false = 체크 해제)onCheckedChange : 체크 상태가 변경될 때 호출되는 콜백 텍스트와 함께 사용하기 (Row 사용)@Composablefun LabeledCheckbox() { var checked by rememb.. 이전 1 2 3 다음