목록Android (63)
시배's Android
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dk2zyE/btsu0td9seS/1qIJESb3M8ntAkKxNT5k30/img.gif)
Animation modifiers and composables | Jetpack Compose | Android Developers Animation modifiers and composables Stay organized with collections Save and categorize content based on your preferences. Compose comes with built-in composables and modifiers for handling common animation use cases. Built-in animated composables Animate developer.android.com Built-in animated composables Animate appeara..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ljxS1/btsu7QfiLxt/pvTceyyOWHPlQcDRKAQn60/img.png)
Modular Navigation with Jetpack Compose A large amount of mobile apps will need some form of Navigation, allowing users to move between different parts of an application. When… medium.com 대부분의 모바일 앱에는 사용자가 애플리케이션의 여러 부분 사이를 이동할 수 있도록 하는 일종의 내비게이션이 필요합니다. Android 앱 내에서 이러한 요구 사항을 구현할 때 애플리케이션은 자체 솔루션을 구현하거나 기존의 인텐트 또는 조각 관리자에 의존하거나 최근 몇 년 동안 탐색 컴포넌트 옵션을 탐색해 왔습니다. Jetpack Compose의 알파 버전과 개발자 프리뷰 버..
이번 글에서는 Compose에서 다중 클릭 이벤트를 처리하는 방법에 대해 소개하겠습니다. interface MultipleEventsCutterManager { fun processEvent(event: () -> Unit) } @OptIn(FlowPreview::class) @Composable fun multipleEventsCutter( content: @Composable (MultipleEventsCutterManager) -> T ) : T { val debounceState = remember { MutableSharedFlow Unit>( replay = 0, extraBufferCapacity = 1, onBufferOverflow = BufferOverflow.DROP_OLDEST ) ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/xGeyf/btsut4ENJD5/78wwiuST11uHSOC2iPa261/img.png)
목록 및 그리드 | Jetpack Compose | Android Developers 목록 및 그리드 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 많은 앱에서 항목의 컬렉션을 표시해야 합니다. 이 문서에서는 Jetpack Compose에서 이 작업을 효 developer.android.com Lazy lists 많은 수의 항목(또는 길이를 알 수 없는 목록)을 표시해야 하는 경우 열과 같은 레이아웃을 사용하면 모든 항목이 표시 여부와 관계없이 구성되고 배치되므로 성능 문제가 발생할 수 있습니다. Compose는 컴포넌트의 뷰포트에 표시되는 항목만 컴포넌트를 작성하고 레이아웃하는 컴포넌트 세트를 제공합니다. 이러한 컴포넌트에는 LazyColumn과 LazyRow가 포함됩니..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Ghw8x/btst6NrJ3sf/3ikkgC9yx9gptM8CiwY7X1/img.png)
끊임없이 진화하는 안드로이드 개발 세계에서 유지 관리가 가능하고 확장 가능하며 구조가 잘 짜여진 애플리케이션을 구축하는 것은 매우 중요합니다. 모델-뷰-모델(MVVM) 아키텍처는 이러한 과제를 정면으로 해결하는 가장 강력한 디자인 패턴 중 하나로 부상했습니다. MVVM은 우려 사항을 명확하게 분리하고 테스트 가능성을 높임으로써 안드로이드 개발자들 사이에서 널리 채택되고 있습니다. 이 포괄적인 가이드에서는 안드로이드 MVVM 아키텍처의 복잡성을 자세히 살펴보고, 주요 구성 요소, 장점 및 모범 사례를 살펴보고, 안드로이드 프로젝트에서 MVVM을 마스터할 수 있는 지식을 갖추도록 도와드립니다. Understanding MVVM Architecture MVVM 아키텍처는 고전적인 모델-뷰-컨트롤러(MVC) 패..
Compose 내 테마 분석 | Jetpack Compose | Android Developers Compose 내 테마 분석 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Jetpack Compose의 테마는 여러 개의 하위 수준 구성과 관련 API로 이루어져 있습니다. 이러한 developer.android.com 젯팩 컴포즈의 테마는 여러 하위 수준 구성 요소와 관련 API로 구성됩니다. 이러한 구성 요소는 MaterialTheme의 소스 코드에서 확인할 수 있으며 사용자 정의 디자인 시스템에서도 적용할 수 있습니다. Theme system classes 테마는 일반적으로 공통된 시각적 및 행동 개념을 그룹화하는 여러 시스템으로 구성됩니다. 이러한 시스템은 테마 값을..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/kSs1g/btsueN46iOT/3nHfSYS5DKuKH35f6CqCa0/img.png)
Compose의 맞춤 디자인 시스템 | Jetpack Compose | Android Developers Compose의 맞춤 디자인 시스템 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Material은 권장되는 디자인 시스템이며 Jetpack Compose는 Material 구현을 제공하지만, developer.android.com 머티리얼은 권장 디자인 시스템이고 젯팩 컴포즈에는 머티리얼 구현이 포함되어 있지만, 반드시 머티리얼을 사용해야 하는 것은 아닙니다. 머티리얼은 전적으로 공개 API를 기반으로 구축되었으므로 동일한 방식으로 자신만의 디자인 시스템을 만들 수 있습니다. 몇 가지 접근 방식을 사용할 수 있습니다: 추가 테마 값으로 MaterialTheme 확장하..
Android 개발을 하다 보면 이미지나 콘텐츠를 확대/축소하거나 드래그하여 이동시키는 기능이 필요한 경우가 있습니다. 이러한 기능을 구현하려면 ZoomState 클래스와 같은 커스텀 상태 클래스를 사용할 수 있습니다. 이 클래스는 Android Jetpack Compose를 사용하여 화면에 구현된 이미지나 콘텐츠를 제어하고 상호작용하는 데 도움을 주는 클래스입니다. ZoomState 클래스 소개 @Stable class ZoomState( @FloatRange(from = 1.0) private val maxScale: Float = 5f, private var contentSize: Size = Size.Zero, private val velocityDecay: DecayAnimationSpec = ..