전체 글(726)
-
Compose #5 - Modifier, Layout, Canvas, Theme
Modifier는 UI 구성 요소와 공통적으로 적용되는 스타일, 배치, 동작을 한 곳에서 정의하는 것을 지원하는 스타일 파이프라인메서드 체이닝으로 메서드를 연속으로 호출하여 스타일을 적용하기 때문에 파이프라인 private object MyModifier : DrawModifier { override fun ContentDrawScope.draw() { drawRect(color = Color.Red) drawContent() }}fun Modifier.drawRedBackground(): Modifier = this.then(MyModifier) this.then에서 두 객체를 하나의 객체로 체인 구성 UI 컴포넌트 별로 지원하는 Modifier들이 상이함clickable()..
2026.10.03 -
Compose #4 - layout
Column수직으로 배치@Composableinline fun Column( modifier: Modifier = Modifier, verticalArrangement: Arrangement.Vertical = Arrangement.Top, horizontalAlignment: Alignment.Horizontal = Alignment.Start, content: @Composable ColumnScope.() -> Unit) Row수평으로 배치 Row( modifier = Modifier .padding(16.dp) .fillMaxWidt..
2026.09.27 -
Compose #3 - components
상호작용 컴포넌트Button, TextField, Checkbox, Switch, Slider 등 Button( onClick = { count += 1 }, modifier = Modifier.padding(8.dp)) { Text("click", fontSize = 18.sp)} 버튼 컴포저블의 주요 속성 - Modifier - onClick - enabled - shape: 버튼의 모서리 모양(둥글기, 각짐 등) - elevation: 버튼의 그림자 깊이 설정 - colors: 배경색, 텍스트 색상 등 - border: 외고가선 두께와 색상 - interactionSource: 클릭, 포커스, 호버 등 사용자 상호작용 추적 - contentPadding: 버튼 내부 내용에 대한 여백 설정 - ..
2026.09.27 -
Compose #2 - 컴포즈
val items by remember { mutableStateOf(1)}젯팩 컴포즈선언적 UI 툴킷 전통적인 XML 방식에서 벗어나 코드로 UI를 직관적이로 빠르게 작성 가능 UI toolkitUI를 설계하고 구현하는 도구와 라이브러리 집합 뷰 시스템초기 안드로이드부터 사용된 전통적인 UI 프레임워크XML 레이아웃과 뷰 클래스를 기반으로 UI 를 구성뷰와 뷰 그룹에는 LinearLayout, ConstraintLayout 등XML 파일로 화면을 정의이후 코드에서 findViewById를 통해 뷰를 조작 젯팩 컴포즈2019 Google I/O에서 소개2021년 7월 1.0 출시 주요 구성 요소State, MutableState, Material Design components Why 선언적?동적 ..
2026.09.27 -
Compose #1 - basic
앱 컴포넌트 액티비티앱의 화면을 구성하고 관리하는 기본 단위ex. 로그인 화면 액티비티, 설정 화면 액티비티... 액티비티들은 Intent를 통해 서로 데이터를 주고 받거나 화면 간 전환을 수행AndroidManifest.xml 파일 내 tag로 선언되어야 함 액티비티의 생명주기onCreateonStart: 화면에 보일때 호출됨onResume: UI 상호작용 준비 될 시 호출됨onPause: focus를 뺏기는 경우onStop: 화면에 보이지 않을때onDestroy: 액티비티 종료 class MainActivity : AppCompatActivity { override fun onCreate(savedInstanceState: Bundle) { super.onCreate(savedInstanc..
2026.09.27 -
Kotlin #7 - Object Oriented Programming
~ 지향특정 개념 및 원칙을 중심으로 소프트웨어를 설계하고 개발하는 방식이는 문제를 바라보는 관젖ㅁ과 해결 방식에 대한 철학적 접근을 포함절차 지향 프로그래밍실행 흐름과 절차를 중심으로 프로그램순차적인 명령어들의 집합으로 로직을 구현객체지향사물이나 개념을 객체 단위로 모델링객체들의 상호작용과 협력을 통해 프로그램이 동작하도록 함데이터와 동작을 하나의 단위로 묶어 관리하고 객체간 소통을 통해 시스템을 구현하는 프로그래밍 패러다임1960년대 Simula가 시작이후 70년대 제록스의 Smalltack를 앨런 케이가 만들어 세상에 전파장점객제지향의 4대 특징을 통해 유지보수성이 높아짐재사용성모듈화와 협업의 효율성독립적 수정확장성모델링 방법UML관계 종류aggregatecompositionassociationde..
2026.09.27