본문 바로가기

안드로이드 코틀린145

[Kotlin][Android] Jetpack Compose에서 폰트 추가해서 사용하기 안녕하세요. 오늘은 Jetpack Compose를 사용해서 만든 레이아웃에 추가한 폰트를 적용하는 방법에 대해 알아보겠습니다. 1. 폰트 추가하기 'res' 폴더를 우클릭해서 New > Android Resource Directory 를 클릭합니다. 디렉토리 이름은 'font'로 지정하고 리소스타입도 font를 선택합니다. 드래그 앤 드롭해서 사용할 폰트들을 폰트폴더에 넣습니다. (폰트 파일 이름은 반드시 '소문자' , '언더바(_)'만 사용합니다.) 아래와 같은 새 창이 뜨면 Refactor를 클릭합니다. 여기까지 하면 폰트 폴더에 파일이 추가된 것을 볼 수 있습니다. 2. 폰트 사용하기 compose 앱 프로젝트를 생성하면 ui라는 폴더가 생성되고 그 안에 theme이라는 폴더가 있습니다. 이 폴더에.. 2022. 11. 3.
[Kotlin][Android] 인앱 업데이트 안녕하세요. Google Play Core 라이브러리의 인앱 업데이트 기능을 사용하여 앱을 기기에서 최신상태로 유지할 수 있는 방법을 알아보겠습니다. Android 5.0(API 레벨 21) 이상을 실행하는 기기는 인앱 업데이트 기능과 호환됩니다. 다음은 앱 내에서 업데이트를 표시하는 두 가지 방법입니다.\ 업데이트 종류 Flexible(유연한) 사용자가 앱을 업데이트하려는 경우 팝업 창이 표시됩니다. 수락과 거부는 모두 선택 사항입니다. 동의하면 업데이트가 백그라운드에서 다운로드되기 시작합니다. 업데이트가 약간의 UI 조정 또는 성능 업그레이드 를 제공하는 경우 이를 활용하는 것을 권장합니다. Immediate(즉각적인) 앱을 사용하려면 무조건 업데이트해야 합니다. 보안 패치와 같은 중요한 업데이트 가.. 2022. 10. 19.
[Kotlin] 알림 구현 - Action Button & Broadcast Receiver 안녕하세요. 오늘은 알림 내에서 Broadcast Receiver로 Action Button을 구현하는 방법을 알아보겠습니다. 더보기 왜 Broadcast Receiver를 사용하는가? Action Button을 클릭할 때 앱이 닫혀있을 수 있기 때문입니다. 알림에서 Action Button을 클릭할 때마다 브로드캐스트를 수신하고 특정 코드를 실행하도록 설정하겠습니다. https://developer.android.com/guide/components/broadcasts 브로드캐스트 개요 | Android 개발자 | Android Developers 브로드캐스트 개요 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 앱은 Android 시스템 및 기타 Andro.. 2022. 10. 9.
[Kotlin][Android] Jetpack Compose로 system bar 색 변경하기 안녕하세요. 오늘은 XML 파일을 수정하지 않고 Compose를 사용하여 상태 표시줄과 탐색 표시줄 색상을 변경하는 방법을 알아보겠습니다. Jetpack Compose 이전에는 system bar색상을 지정하기 위해 일반적으로 다음 themes.xml과 같이 파일을 수정했습니다. android:statusBarColor및 android:navigationBarColor속성은 각각 상태 표시줄 색상과 탐색 표시줄 색상에 영향을 줍니다. android:windowLightStatusBar (상태 표시줄의 아이콘을 어둡게 만들기 위해) 또는 android:windowLightNavigationBar(탐색 표시줄과 유사하게 ) 지정할 수 있습니다. (후자는 API 레벨 27이 필요 합니다.) 폴더 themes... 2022. 9. 27.
[Kotlin][Android] PhotoView 라이브러리 사용법(사진 줌인&줌아웃&드래그 이동) 안녕하세요 오늘은 PhotoView 라이브러리 사용법에 대해 알아보겠습니다. * 사진을 전체 화면으로 볼 때 확대, 축소, 이동의 구현을 쉽게 도와주는 라이브러리 입니다. 1. build.gradle(project) 에 아래 코드가 없다면 추가해줍니다. allprojects { repositories { maven { url "https://www.jitpack.io" } } } buildscript { repositories { maven { url "https://www.jitpack.io" } } } 2. build.gradle(module)에 아래 코드를 추가해줍니다. dependencies { implementation 'com.github.chrisbanes:PhotoView:2.3.0' } .. 2022. 9. 12.
[Kotlin][Android] 사용한 오픈소스 라이선스 표시하기 이번 시간에는 앱을 만들면서 사용한 오픈소스의 라이선스(Open-source license)를 일일히 적지 않고 자동으로 표시해주는 방법에 대해 알아보겠습니다. * 오픈소스란? 오픈소스 소프트웨어(Open Source Software, OSS)를 뜻하는 용어입니다. 오픈소스 소프트웨어는 공개적으로 액세스할 수 있게 설계되어 누구나 자유롭게 확인, 수정, 배포할 수 있는 코드입니다. 그러나 오픈소스도 사용하기 위해서는 해당 오픈소스의 라이선스를 반드시 준수해야 합니다. 이를 위반할 경우 사용 권리가 박탈되고, 이를 제품화 한 경우 제품을 판매할 수 없습니다. 라이선스에 따라 사용한 오픈 소스 라이브러리를 표시해야 하는 경우가 있습니다. 이 때 구글에서 제공하는 플러그인을 사용해 간단하게 구현해 보겠습니다... 2022. 8. 28.
[Kotlin][Android] 터치 제스처 감지 (Gesture Detector) 안드로이드에서 터치 제스처를 감지하는 기능을 코틀린으로 구현하는 방법에 대해 알아보겠습니다. * 터치 제스처 종류 - onDown (터치) - onShowPress (onDown 보다 길게 터치) - onSingleTapUp (터치가 끝날 때) - onLongPress (onShowPress보다 길게 터치) - onScroll(스크롤) - onFling (스크롤과 비슷하지만 손가락으로 튕길 때) 1. activity_main.xml 상단 부분의 뷰는 터치를 감지하는 영역이고 하단의 텍스트뷰는 어떤 터치인지 출력해주는 뷰입니다. 2. MainActivity.java import android.annotation.SuppressLint import android.os.Bundle import android... 2022. 8. 13.
[Kotlin][Android] 안드로이드 시간 표현하기 안녕하세요. 안드로이드에서 시간을 표현해야 할 다양한 경우가 있습니다. 그 중 유투브 댓글에서 시간을 표현하는 방법인 'x분 전', 'x시간 전', 'x일 전', 'x주 전' 등과 같은 포맷으로 변경하는 방법을 알아보겠습니다. 1. string to millisecond @SuppressLint("SimpleDateFormat") fun dateTimeToMillSec(dateTime: String): Long{ var timeInMilliseconds: Long = 0 val sdf = SimpleDateFormat("yyyy-MM-dd HH:mm:ss") try { val mDate = sdf.parse(dateTime) timeInMilliseconds = mDate.time } catch (e: .. 2022. 8. 6.
[Android][Kotlin] Animation으로 Lottie를 사용해보기 1. build.gradle에 Lottie 를 추가합니다. // 로티 implementation 'com.airbnb.android:lottie:3.7.0' 2. asset folder를 생성합니다. > 사용할 Lottie Anmation 찾기 : https://lottiefiles.com/search?q=space&category=animations Free Lottie Animation Files, Tools & Plugins - LottieFiles The world’s largest online platform for the world’s smallest animation format for designers, developers, and more. Access Lottie animation to.. 2022. 7. 28.