안드로이드 공부 노트62 [Android-Compose]안드로이드 컴포즈 백 버튼/ 뒤로가기 처리 (onbackpressed) 이번 포스팅은 안드로이드 컴포즈에서 백 버튼/뒤로 가기 처리를 하는 방법을 알아보겠다. 얼마전 컴포즈로 만들고 있는 프로젝트에서 백 버튼/뒤로 가기 처리를 해야 하는 상황이 생겼다. 기존 XML이였으면 onbackpressed override 해서 처리했을 텐데 컴포즈에서는 그런 방법이 안돼서 구글링을 해보았다. 그랬더니 생각보다 정말 간단했다! 바로 아래 코드 처럼 BackHandler를 호출해 스코프 안에서 하고 싶은 작업을 처리하면 된다. @Composable fun TestScreen(){ BackHandler { // todo Back버튼 처리 로직 } // todo Code } 2023. 7. 30. [오류] java.lang.IllegalArgumentException: Navigation destination that matches request NavDeepLinkRequest 이번 포스팅은 개발하는 프로젝트에서 컴포즈 NavDeepLink를 이용해서 데이터를 넘겨주고 있었다 넘겨주는 인수가 URL형식이라서 평소대로 딥링크 안에 인수를 추가해 넘겨줬다 하지만 아래와 같은 오류가 발생했다. java.lang.IllegalArgumentException: Navigation destination that matches request NavDeepLinkRequest # 오류 원인 Navigation의 routes는 url과 동등하기 때문에 URL 내에 다른 URL을 전달해야 하는 경우엔 인코딩해줘야 하는데 인코딩을 안 하고 바로 URL주소를 넘겨줬기 때문에 오류가 발생했다. # 해결 방법 방법은 간단하다 아래의 코드를 사용해 URL을 인코딩해서 넘겨주면 된다. URLEncoder... 2023. 7. 30. [Android-BottomNavigationView-오류] BottomNavigationView 클릭시 아이콘이 원하는 이미지로 안 나옴(변경 안됨) 이번 오류 포스팅은 간단하지만 해결하는데 나는 은근 오래 걸렸던 오류 해결 기록을 포스팅해보겠다. # 오류 사항 사진을 보면 오른쪽이 원래 구현하려고 했던 아이콘 이미지인데 아무리 이미지를 svg, png, jpeg로 해봐도 왼쪽 이미지처럼 안 나오는 오류가 있었다. # 발생 원인 - BottomNavigationView에서 기본으로 된 색상 설정등이 우선사항으로 적용되어 아무리 이미지의 속성을 바꿔도 그대로 이상하게 나오는 것이었다. # 해결법 - BottomNavigationView에서 기본으로 된 색상 설정등이 포함되어 있는 Tint를 초기화시켜준다(아래 코드 참조) bottomNavigationView.itemIconTintList = null 이러면 본인이 원하는 아이콘의 이미지가 나온다! (바.. 2023. 6. 4. [Android-Compose] Spacer를 이용해 간단한 선 만들기 이번 포스팅은 정말 간단한 포스팅이다. 개발 시 간단한 수직 선이나 수평선을 만들어야 할 때가 있다. 그럴 때 컴포즈에서는 어떤 식으로 처리하는지 알아보자! 우선 많은 방법들이 있지만 이번 예제에서는 Spacer()컴포저블 함수를 사용해 볼 것이다. Spacer함수는 보통 컴포넌트 간의 공간을 만들고, 레이아웃의 일부 영역을 비워두기 위한 용도로 사용하는데 간단한 선도 만들 수 있다. 그럼 아래 예제를 통해 어떤 식으로 만드는지 알아보자! # 수직 선 만들기 // 너비가 1dp인 수직선 만들기 Spacer(modifier = Modifier .width(1.dp) .fillMaxHeight() .background(Color.Black) ) 이런 식으로 width값을 주어 간단한 수직선을 만들 수 있다... 2023. 5. 25. [Android-Hilt] 안드로이드 Hilt(힐트)란? 이번 포스팅은 드디어 의존성 주입 (dependency injection, di) 라이브러리중 하나인 힐트를 알아보도록 하자! 우선 들어가기전 DI의 개념을 모르면 어려울 수도 있기 때문에 학습을 하고 이 글을 보는걸 추천한다. DI에 대한 포스팅은 추후에 추가 하도록 하겠다.# Hilt(힐트)란?간단하게 정리하자면 안드로이드에서 쉽게 의존성을 관리해주고 주입해주는 라이브러리라고 생각하면 된다. 또한 기존에 많이 쓰이던 Dagger(대거)를 기반으로 만들어졌다. 대거는 러닝커브가 높은 편이라서 학습하기가 어렵다 그리고 구글에서도 힐트를 지원해주고 있어서 안쓸 이유가 없는거 같다.# 사용법## gradle 추가- build.gradleplugins { ... id 'com.google.dagger.hilt.. 2023. 4. 19. [Firebase - 휴대폰 인증 오류 ] SMS verification code request failed: unknown status code: 17010 null 현재 회사에서 신규 프로젝트를 하는 중 휴대폰 번호 인증 부분이 있는데 파이어베이스에서 제공하는 Authentication 기능을 사용하기로 했다. 하지만 휴대폰 번호를 입력하고 인증받기를 누르는데 아래와 같은 오류가 발생했다. SMS verification code request failed: unknown status code: 17010 null 아무리 휴대폰 번호를 입력해도 같은 오류만 발생할 뿐 나아지지 않았다. 여기서 중요한 점은 테스트번호는 되는 것이었다. 아무튼 TMI는 뒤로하고 오류 발생 원인을 적어보도록 하겠다. # 오류 발생 원인 나도 저 위에있는 오류가 무엇인지 당연 구글링을 해봤고 여러 문서들 중 가장 정확한? 글을 가져와봤다. When you repetitively use a s.. 2023. 4. 18. 이전 1 2 3 4 5 6 7 8 ··· 11 다음