Android

안드로이드 개발 일상

  • Jetpack Compose | 밀어서 삭제 (SwipeToDismiss) 구현

    SwipeToDismiss(밀어서 삭제) 방식은 리스트에서 아이템을 삭제하거나, 좋아요나 플레이리스트 등 특정 그룹에 추가하는 기능을 구현할 때 용이하다. Jetpack Compose에서는 이를 쉽게 제작할 수 있도록 SwipeToDismiss 라는 Composable 함수를 지원한다. 작성 방법이 쉽기 때문에 금방 따라 작성할 수 있다. state : 앞선 코드에서 선언한 DismissState 에서 confirmStateChange 콜백 함수를 통해 SwipeToDismiss Composable 함수의 Dismiss 상태를 추적할 수 […]

    더보기


  • Jetpack Compose | Compose를 이용하는 BaseFragment

    Compose로 구성되는 Fragment의 BaseFragment 부모 클래스를 다음과 같이 작성할 수 있다. 이 ComposeBaseFragment 를 상속해서 만든 Fragment 에서는 “Compose” Composable 함수 안에 Compose 코드들을 구성하고, afterCompose() 에서는 컴포즈 구성 이후 실행되어야 하는 다른 코드들을 작성할 수 있다. 필요에 따라 beforeCompose() 와 같은 함수를 만들어서 컴포즈 구성 이전에 실행되어야 하는 코드를 작성할 수도 있다.

    더보기


  • Jetpack Compose | CoordinatorLayout 내 ComposeView 스크롤 문제

    다음과 같이 CoordinatorLayout의 자식으로 ComposeView를 가지게 되는 구성에서, ComposeView의 스크롤 이벤트를 의도대로 처리할 수 없다. CoordinatorLayout 과 해당 레이아웃 내의 ComposeView 간 스크롤 상호작용이 안되는 문제는 다음과 같이 해결 할 수 있다. 다음과 같이 제공되는 NestedScrollConnection를 생성하고, ComposeView 의 최상단 Composable에 nestedScroll 수정자를 통해 적용하면 문제가 해결된다. 중첩 스크롤 상호 운용성 > 하위 ComposeView를 포함하는 […]

    더보기