compose(5)
-
Useful modifier
알아두면 유용한 두 개의 수정자를 소개합니다~~ Offset modifier의 offset 을 통해 x 및 y 위치를 변경할 수 있음 @Composable funOffsetModifier( modifier:Modifier = Modifier ) { Box( modifier = modifier .padding(50. dp) .ground(Color.LightGray) .fillMaxWidth() .height(100. dp), contentAlignment = Alignment.TopCenter ) { Text( text = stringResource(R.string.offset_content), modifier = Modifier.offset(x =0. dp, y = -(15. dp)), style = ..
2023.11.30 -
Compose Viewpager
주요 기능 선택한 항목이 컨테이너 중앙에 배치됩니다.호출기는 수평 또는 수직으로 스크롤할 수 있습니다.항목은 컨테이너 크기의 일부를 차지할 수 있으므로 인접한 항목이 측면에 정점에 있을 수 있습니다.사용자가 첫 번째 또는 마지막 항목을 지나 스크롤할 수 있도록 항목을 초과하는 것이 가능하지만 호출기는 항목을 다시 중앙에 배치하도록 재설정됩니다.항목 간의 구분을 지정할 수 있습니다.처음에 어떤 항목이 중앙에 배치될지 나타낼 수 있습니다. Pager@Composable fun Pager( // 1 items: List, // 2 modifier: Modifier = Modifier, // 3 orientation: Orientation = Orientation.Horizontal, // 4 initialIn..
2023.11.01 -
Avoiding recomposition
Recomposition 입력 매개변수 또는 외부 상태의 변경에 따라 함수를 재구성하고 호출 하는 것. compose의 기본 개념 Stable parametersString, Int, Float, ImmutableList Unstable parametersList, Map, Set , var ( Data classes) Avoiding Recomposition@Stable 사용값이 관찰 가능해지며, 값이 변경되면 알림이 전송됨@Stable data class Contact(var flag: MutableState = mutableStateOf(false))→ flag변수의 값이 변경될 때만 recomposition @Immutable 사용값이 절대 변경되지 않을 것이라고 약속하는 annotation항목이..
2023.11.01 -
UI Testing (with Jetpack Compose)
종속성 추가 dependencies { [...] testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.compose.ui:ui-test-junit4' debugImplementation 'androidx.compose.ui:ui-test-manifest' } 테스트 클래스 만들기 테스트하려는 기능을 마우스 오른쪽 버튼으로 클릭 UI 요소를 테스트할 예정이므로 androidTest 패키지 에 작성해야함 클래스 생성 완료 테스트 작성 아래는 @RunWith(), @Before, @Get, @Text를 사용한 예제이다. 클래스의 첫 번째 주석을 활용하여 JUnit 4로 실행하고, 두 번째 주석을 사용하여 구성 가능한 구성 요소..
2023.10.23 -
자주 까먹는 compose modifiers
1). border Modifier@Composable fun MakeBorder( modifier: Modifier = Modifier ) { Box(modifier = modifier.fillMaxSize(), contentAlignment = Alignment.Center) { Spacer( modifier = Modifier .border( color = Color.Red, width = 2.dp, shape = CircleShape ) .size(100.dp) ) } }2). horizontalScroll Modifier@Composable fun HorizontalScroll( modifier: Modifier = Modifier ) { val scrollState = rememberScrol..
2023.10.23