본문 바로가기

Android101

[Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린] 정리 11 - 뷰 페이저2 ― 스와이프로 넘기는 화면 구성 본 글은 [Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린 - 이지스퍼블리싱 (2022)] 의 내용을 발췌한 것입니다. 좀더 자세한 내용은 책 혹은 인강을 통해 확인해 주세요. HTML 삽입 미리보기할 수 없는 소스 뷰 페이저ViewPager는 스와이프(손가락으로 화면을 탭하여 오른쪽이나 왼쪽으로 미는) 이벤트로 화면을 전환할 때 사용합니다. Instagram 앱을 보면 사용자가 손가락을 이용해 화면을 양옆으로 밀어 이전이나 다음 화면을 볼 수 있습니다. Instagram이 아니어도 많은 앱에서는 뷰 페이저로 만든 화면을 제공합니다. 뷰 페이저는 플랫폼 API에서 제공하지 않으므로 androidx 라이브러리를 이용해 개발해야 합니다. 그런데 개발자가 오랫동안 이용했던 viewpager와 별개로 .. 2022. 2. 28.
[Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린] 정리 10 - 진동 알림 본 글은 [Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린 - 이지스퍼블리싱 (2022)] 의 내용을 발췌한 것입니다. 좀더 자세한 내용은 책 혹은 인강을 통해 확인해 주세요. HTML 삽입 미리보기할 수 없는 소스 진동도 사용자 알림 효과로 많이 이용합니다. 앱에서 진동이 울리게 하려면 먼저 매니페스트 파일에 으로 퍼미션을 얻어야 합니다. 진동은 Vibrator 클래스를 이용합니다. 그런데 Vibrator 객체를 얻는 방법이 API 레벨 31(Android 12)부터 변경되었습니다. 31 이전 버전에서는 VIBRATOR_SERVICE로 식별되는 시스템 서비스를 이용했지만, 31 버전부터는 VIBRATOR_MANAGER_SERVICE로 식별되는 VibratorManager라는 시스템 서비스를 얻.. 2022. 2. 28.
[Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린] 정리 9 - 화면 정보 가져오기 본 글은 [Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린 - 이지스퍼블리싱 (2022)] 의 내용을 발췌한 것입니다. 좀더 자세한 내용은 책 혹은 인강을 통해 확인해 주세요. 안드로이드 시스템은 기본으로 크기 호환성을 지원하지만 때로는 개발자가 직접 코드에서 조정할 수도 있습니다. 이때 기기의 크기 정보를 가져와야 합니다. 그런데 기기의 크기 정보를 가져오는 방법은 API 레벨 30 버전과 이전 버전에서 차이가 있습니다. 30 이전 버전에서는 DisplayMetrics로 크기 정보를 가져왔지만 30 버전부터는 이 방법을 지원하지 않고(deprecation), WindowMetrics를 이용해야 합니다. 따라서 다음처럼 30 버전을 기준으로 버전을 구분해서 작성해야 합니다. 다음 코드는 기기의 .. 2022. 2. 28.
[Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린] 정리 8 - 터치와 키 이벤트 본 글은 [Doit 깡샘의 안드로이드 앱 프로그래밍 with 코틀린 - 이지스퍼블리싱 (2022)] 의 내용을 발췌한 것입니다. 좀더 자세한 내용은 책 혹은 인강을 통해 확인해 주세요. HTML 삽입 미리보기할 수 없는 소스 터치 이벤트 앱의 화면에서 발생하는 사용자 이벤트는 터치touch입니다. 터치란 손가락으로 화면을 잠시 눌렀다가 떼는 행위를 말합니다. 앱은 사용자의 터치를 인식하고 화면을 손가락으로 눌렀는지 떼었는지 스와이프swipe했는지에 따라 알맞게 동작하도록 구현합니다. 이처럼 앱의 화면에서 발생하는 사용자의 터치 이벤트를 처리하고 싶다면 액티비티 클래스에 터치 이벤트의 콜백 함수인 onTouchEvent()를 선언하면 됩니다. 콜백 함수란 어떤 이벤트가 발생하거나 시점에 도달했을 때 시스템.. 2022. 2. 28.