일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 안드로이드
- LifeCycle
- textview
- Kotlin
- livedata
- activity
- ScrollView
- 계측
- Dialog
- android
- binding
- Button
- Compose
- Navigation
- textfield
- appbar
- viewmodel
- drift
- 앱바
- TEST
- Flutter
- intent
- DART
- tabbar
- 앱
- data
- Coroutines
- scroll
- 테스트
- CustomScrollView
- Today
- Total
목록안드로이드 (110)
Study Record
😶 data class (데이터 클래스) 데이터 클래스는 데이터를 보유하는 것이 주된 목적의 클래스이다. data class User(val name: String, val age: Int) 데이터 클래스 주의점 데이터 클래스에는 생성자에 매개변수가 하나 이상 있어야 하며 모든 생성자 매개변수는 val, var 로 표시되어야 한다. 또한, 데이터 클래스는 abstract 또는 open, sealed, inner 일 수 없다. 데이터 클래스는 .componentN(), copy() 함수에 대한 명시적인 구현은 허용되지 않는다. 데이터 클래스는 자동으로 componentN() 함수를 생성해 주기 때문에 Destruction declaration 이 가능하다. 😶 Destructuring declaration..
😶 Compose 이전 환경 설정 class TipUiTest { @get:Rule val composeTestRule = createComposeRule() } 😶 UI 콘텐츠 설정 setContent 안에 UI 구성요소를 호출한다. class TipUiTest { @get:Rule val composeTestRule = createComposeRule() @Test fun calculate_20_percent_tip() { composeTestRule.setContent { TipTimeTheme { TipTimeLayout() } } } } 😶 특정 컴포저블 엑세스하기 onNodeWithText() 메서드로 특정 문자열이 포함된 컴포저블(ex. TextField)을 찾아 performTextInpu..
😶 State (상태) Compose 는 선언형 UI 프레임워크로 UI 모습을 코드를 선언 한다. 앱이 실행되는 동안 또는 앱이 사용자와 상호작용할 때 UI 를 변경하고자 하면, 예를 들어 사용자가 입력폼에 검색할 단어를 가상 키보드를 클릭한다면 내부 코드에서는 사용자의 키보드 입력 값을 받아 UI 를 다시 업데이트하여 입력 폼의 값을 업데이트해야 한다. 이 과정을 Compose 는 리컴포지션이라는 프로세스를 사용해 앱의 컴포지션을 업데이트하여 UI 를 업데이트할 것이다. 여기서 컴포지션은 Compose가 컴포저블을 실행할 때(컴포저블 함수에 표함된 UI 를 사용자에게 표시할 때) 빌드한 UI 에 대한 정보이다. 상태(State)가 변경되면 Compose 는 영향을 받는 컴포저블을 새 상태로 다시 실행하..
https://developer.android.com/jetpack/compose/documentation?hl=ko Jetpack Compose 시작하기 | Android Developers Jetpack Compose 시작하기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Jetpack Compose는 네이티브 Android UI를 빌드하기 위한 최신 도구 키트입니다. 여기에서 Compo developer.android.com
😶 레이아웃 수정자 (modifier) 수정자는 Compose UI 요소를 장식하거나 이 요소에 동작을 추가하는데 사용된다. 예를 들어,텍스트나 버튼, 레이아웃의 배경, 패딩, 너비와 높이, 동작을 추가할 수 있다. 이를 설정하려면 컴포저블이나 레이아웃에서 수정자를 매개변수로 허용해야 한다. 예시) Text( text = from, fontSize = 36.sp, modifier = Modifier .clickable(onClick = onClick) .padding(16.dp) .background(colorResource(id = R.color.teal_200)) .align(alignment = Alignment.CenterHorizontally) ) 😶 레이아웃 가중치(weight) 하위 요소끼리..
😶 이미지 컴포저블(Image) val image = painterResource(id = R.drawable.androidparty) Image( painter = image, contentDescription = null, contentScale = ContentScale.Crop, alpha = 0.5F, modifier = Modifier ) alpha 는 이미지의 불투명도를 설정한다. contentScale 는 이미지의 크기를 설정한다. 🙂 아이콘 컴포저블(Icon) Material Design 의 아이콘을 추가할 수 있다. Tint 매개변수를 변경하여 원하는 스타일에 맞게 아이콘의 색상을 조정할 수 있다. Image 컴포저블과 마찬가지로 contentDescription 매개변수를 채워야 한다..
JetPack Compose 에서 텍스트 표현은 Text() 컴포저블 함수를 사용한다. @Composable fun Text( text: String, modifier: Modifier = Modifier, color: Color = Color.Unspecified, fontSize: TextUnit = TextUnit.Unspecified, fontStyle: FontStyle? = null, fontWeight: FontWeight? = null, fontFamily: FontFamily? = null, letterSpacing: TextUnit = TextUnit.Unspecified, textDecoration: TextDecoration? = null, textAlign: TextAlign? =..
😶 Preview - 미리보기 Android 의 디자인(Besign) 창에서 미리보기로 볼 수 있다. @Preview(showBackground = true) @Composable fun GreetingPreview() { HappyBirthdayTheme { Greeting("Android") } } 😶 픽셀 표시 방법 확장 가능한 픽셀(SP) 는 글꼴 크기의 측정 단위이고, 밀도 독립형 픽셀(DP)는 레이아웃에 사용하는 단위이다. 기본적으로 SP단위와 DF단위는 크기가 동일하지만 사용자가 휴대전화 설정에서 선택한 선호하는 텍스트 크기에 따라 크기가 조절된다. // Ex. SP import androidx.compose.ui.unit.sp Text( text = message, fontSize = 24..