전체 글 (34) 썸네일형 리스트형 [Android] JetPack Compose Compose 단계/앱개발자가 화면이 그려지는 과정을 알아야 하는 이유 Compose 단계컴포지션(Composition) 단계@Composable 함수들이 실행되어 UI 트리(구조)를 구성함이 단계에서 상태를 읽으면 해당 상태가 변경될 때마다 리컴포지션이 발생함레이아웃(Layout) 단계컴포저블의 크기 측정 및 배치를 계산하는 단계Modifier.offset { ... }, Modifier.layout { ... } 등은 이 단계에서 실행됨이 안에서 상태를 읽으면, 컴포지션을 다시 하지 않고 레이아웃만 다시 함드로잉(Drawing) 단계실제로 화면에 그려지는 픽셀을 렌더링하는 단계이 단계에서는 Compose 상태를 거의 읽지 않음(상태 기반 애니메이션, Modifier.drawBehind 등은 간접적으로 관여) 단계별로 실행해야 하는 이유위와 같이 3가지 단계는 순차적으로.. [Android] JetPack Compose ViewModel이 필수적인 이유/UI에 상태 관리하면 생기는 문제 Composable은 'UI만 그린다' 부작용은 ViewModel이나 외부에서 처리한다Composable 안에서 직접 SharedPreferences나 DB를 만지지 말라 이게 안드로이드의 권장 방식이다.권장 방식은 따르는 게 맞다. 부작용이란?= UI를 그리는 것 외에, 다른 것을 변경하는 작업예) SharedPreferences 쓰기, ViewModel 데이터 수정 등. 로컬 변수의 값 변경예) Compose함수 안에서 items++ 후 이 값을 UI에 표시 부작용을 왜 Composable에서 하면 안되는가?한 파일에 하면 편하지 않나 의문이 들 수 있다.하지만, Composable이 디자이너,ViewModel이 개발자라고 생각하면 편하다. 화면 디자인 업무를 맡은 사람에게 데이터 저장, .. [Android] JetpackCompose을 사용하는 이유/Composable란 Jetpack Compose의 장점요즘 트렌드에 맞는 선언형 UI동적 콘텐츠로 높은 성능과 유연성위젯에 기본 언어 활용 가능(if문, 루프 등)지능적 재구성데이터, 이벤트의 변화가 있는 위젯만 재구성 → 높은 효율컴퓨팅 성능 및 배터리 수명 문제 해결 Composable 함수란?데이터를 전달받고 이를 사용하여 화면에 텍스트 위젯을 렌더링하는 간단한 구성 가능한 함수간단히 위젯을 그리기 위한 함수라고 보면 된다! Composable 함수는 순서와 관계없이 실행= 모두 독립적이어야 함. 첫 번째로 쓴 함수의 변경 사항이 두 번째 함수에 반영되지 않을 수 있는 문제를 조심해야 한다. UI를 내보내는 Compose 함수는 UI 위젯을 구성하는 대신 원하는 화면 상태를 설명하므로 아무것도 반환할 필요가 없다.컴.. [Pure App] Bottomnavigationbar 적용 / Provider 이용 (with Flutter) 결과 NavigationBar 클래스 이용 - destinations: 리스트 형식으로 메뉴 형성- selectedIndex: 위의 리스트에서 선택한 순서값을 저장- onDestinationSelected : destinations의 리스트 중 하나가 선택되면 호출 NavigationBar의 destinations 에서 요소들 중 한 개를 클릭하면 onDestinationSelected가 호출되고,콜백으로 selectedIndex의 값을 업데이트한다.selectedIndex가 업데이트 되면 NavigationBar는 다시 빌드되면서 선택한 요소로 이동!int tabPageIndex = 0;@overrideWidget build(BuildContext context) { return Navi.. [Android] 안드로이드 개념 복습 1) 안드로이드의 특징들 •애플리케이션 프레임워크 •ART 가상 머신 •OPEN GL ES 3.x 기반 3D 그래픽 지원 •SQLite 데이터 베이스 •다양한 미디어 지원 •Android Studio IDE 제공 •센서 등 다양한 하드웨어 지원 2) Android 가상 머신의 이름 = ART 가상 머신 3) 안드로이드 4대 구성 요소 중 Activity의 정의 = 눈에 보이는 화면을 관리하는 실행 단위 4) 안드로이드 4대 구성 요소 중 Service의 정의 = 화면을 가지지 않은 실행 단위. 백그라운드 프로세싱 5) 안드로이드 4대 구성 요소 중 Content Provider의 정의 = 저장된 데이터를 제공하기 위해 실행되는 실행 단위 6) 안드로이드 4대 구성 요소 중 BroadCast Receive.. [Android] Kotlin - TextInputLayout 정보 입력 및 출력 / Swithch 버튼 / CheckBox / Visibility 응용 문제 / 디자인 수정 결과 과정 1. 아이디, 비밀번호, 이름을 입력한다. 2. 취미의 Switch버튼을 눌러 on이 되면 CheckBox가 보인다. 3. 좋아하는 취미를 선택한다. 4. 확인 버튼을 누르면 입력한 정보가 출력된다. 5. 취미를 선택하지 않은 경우 취미가 없다라고 뜬다. 처음 코드 MainActivity.kt package kr.co.lion.ex07 import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.CheckBox import androidx.core.view.isGone import androidx.core.view.isVisible import com.google.android.mate.. [Android] Kotlin - 사칙연산 계산기 만들기 / 예외 처리 / 함수 구조화 결과 과정 1. 숫자 2개를 각각 입력한다. 2. 연산자를 선택한다. 3. 결과 계산 버튼을 클릭한다. 4. 결과가 출력된다. 처음 코드 MainActivity.kt package kr.co.lion.ex04 import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import kr.co.lion.ex04.databinding.ActivityMainBinding class MainActivity : AppCompatActivity() { lateinit var activityMainBinding : ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { su.. [Web] 프로젝트 2 주차 - 메인 페이지 디자인 확정 & React 설치 및 설정 & 화면 구현& 레이아웃 설계 이번 주차부터는 언능 디자인을 끝내야겠다고 생각했다. 그래야 화면 설계와 기능 구현이 가능하기 때문에 css는 차근히 할 생각이다. 메인 페이지 디자인 확정 우선 디자인과 컨셉은 확정되었다. 아예 다 디자인하진 않고 이런 부분은 이렇게 만들어야겠다하고 참고자료로 넣은 부분도 있다. 단과대별에서 지도 부분이랑 학식 식단표, 달구지 시간표, footer부분은 차차 디자인해갈 계획이다. 내가 디자인을 좋아하긴 하지만 그래도 공대생으로서 난 코딩으로 그걸 구현하는게 더 좋다. 그래서 디자인하면서 행복하긴 했지만 이걸 잘 구현할 수 있겠지? 싶으면서도 빨리 구현을 시작하면 좋겠다고 생각했다. React 설치 및 설정 드디어 구현을 위해 React설정을 진행했다. 처음 써보는 라이브러리가 기대가 되면서도 걱정도 됐.. 이전 1 2 3 4 5 다음