본문 바로가기

전체 글27

Android 배워보자 Compose! -(6) Spinner 를 Compose 에서 Spinner -> DropdownMenu! Spinner 라는 레이아웃 요소는 기존 XML 에서 드롭다운 형태의 메뉴를 구현할 때 많이 사용되었는데 Compose 로 넘어오면서 "DropdownMenu" 라는 개념으로 바뀌어 들어왔습니다. 이전 ProgressBar 같은 요소들과는 또 다르게 구현 방식 자체가 좀 많이 바뀌었다고 느껴졌던 요소였습니다. DropdwonMenu? @Composable fun DropdownMenu( expanded: Boolean, onDismissRequest: () -> Unit, modifier: Modifier = Modifier, offset: DpOffset = DpOffset(0.dp, 0.dp), scrollState: ScrollState = remembe.. 2024. 3. 18.
Android SpeechRecognizer 를 이용해 음성 인식 구현하기 Android 에서 지원하는 음성 인식 기능인 SpeechRecognizer Android 에는 SpeechRecognizer 라는 class 로 마이크에 입력되는 음성을 Text 로 변환해주는 Class 가 지원됩니다. SpeechRecognizer | Android Developers developer.android.com 해당 클래스를 이용하면 음성을 이용한 검색 / 채팅과 같은 기능 을 구현할 수 있습니다. Source Code 기본적으로 마이크를 통해 Audio 를 입력해야 하기 때문에 Permission 설정을 먼저 요청합니다. fun requestPermission(context: Context) { if (ContextCompat.checkSelfPermission(context, Mani.. 2024. 2. 29.
Android 배워보자 Compose! -(5) Scaffold / BottomNavigation Scaffold 직역하면 "발판" 이라는 뜻인데 기존에도 사용되던 용어이지만 Android 에선 Compose 로 넘어오면서 생긴 요소입니다. 이름에 걸맞게 레이아웃에서 Top / Bottom Bar 부터 시작해서 SnackBar, FloatingButton, Drawer 와 같이 소위 미리 깔아두는 요소들을 세팅하고 , PaddingValues 를 후행 람다에서 수신하여 안에 들어갈 레이아웃과 겹치거나 하지 않도록 지원해주는 Composable 입니다. 그 중에서도 모바일에서 자주 사용되는 하단 네비게이션 바(Bottom Navigation Bar) 가 들어간 Screen 을 Scaffold 를 이용해서 그려봅시다. BottomNavigation @Composable fun BottomNavigatio.. 2024. 2. 14.
Jetpack Compose 에서 Dialog 구현하기 Dialog 는 안드로이드에서 생각보다 자주 사용되는 기능입니다. 단순하게 정보를 보여주고 확인버튼을 누르면 Dismiss 되는 형태부터 이런저런 옵션을 설정한다던지 유저가 정보들을 입력할 수 있는 창을 제공한다던지 현재 화면에서 가볍게 무언가를 띄울 때 가장 유용하게 사용되는게 이 Dialog 인데 Compose 환경에서 Dialog 는 기존보다 쉽게 구현할 수 있도록 지원해주고 있습니다. @Composable fun Dialog( onDismissRequest: () -> Unit, properties: DialogProperties = DialogProperties(), content: @Composable () -> Unit ) 이전에는 Dialog 객체를 생성한 뒤 거기에 setContentVi.. 2024. 2. 7.