본문 바로가기

안드로이드 코틀린145

[Kotlin][Android] 안드로이드 - 다중이미지 불러오기 안녕하세요.~ 이번시간에는 안드로이드 코틀린으로 앨범에서 다중이미지를 불러오는 기능을 만들어보겠습니다. 스틱코드 (stickode.com/mainlogin.html) 이번에도 역시 빠르게 만들기 위해 스틱코드 플러그인을 사용해서 만들어보겠습니다. 스틱코드는 자주쓰는 코드를 저장해서 쉽고 빠르게 사용할 수 있고, 다른사람들의 코드도 즐겨찾기를 통해 쉽게 내코드로 등록하여 사용할 수 있어 사용하는 사람이 늘어나고, 좋은 코드가 쌓일수록 강력해지는 플러그인 입니다. 그럼 시작하겠습니다. 권한설정 AndroidManifest.xml 파일 안에 파일을 불러오기 위한 권한을 추가해줍니다. 이미지 파일을 불러오기위해서 앱의 manifest에 권한 설정을 해주어야 에러가 나지 않습니다. 프로젝트 생성 새로운 프로젝트를.. 2021. 5. 25.
[Kotlin][Android] 리사이클러뷰 빠르게 만들기 이번 포스팅에서는 코틀린으로 리사이클러뷰를 만드는 방법에 대해 포스팅하겠습니다. 리사이클러뷰가 무엇인지와 자바로 구현하는 방법에 대해선 아래의 포스팅을 참고해 주세요. stickode.tistory.com/40 [Java][Android] 리사이클러뷰 만들기 이번 포스팅에서는 리사이클러뷰를 만드는 방법을 알아보겠습니다. 리사이클러뷰란 ? 기존의 ListView을 보완하기위해 , ViewHolder를 통하여 뷰를 재사용하며 성능적인 면을 개선하고 , 커스터마이 stickode.tistory.com 먼저 xml 화면부터 만들겠습니다. 리사이클러뷰 하나만 있는 매우 간단한 화면입니다. 그 다음 리사이클러뷰 안에서 데이터를 어떻게 보여줄 것인지 설정하는 xml 파일을 만들겠습니다. 카카오톡처럼 제일 왼쪽에 이미.. 2021. 5. 24.
[Kotlin][Android] 네비게이션 드로어(Navigation Drawer) 만들기 스틱코드를 사용하여 네비게이션 드로어를 만들어보겠습니다. 먼저 예제에 사용할 화면을 만들어 보겠습니다. 다음 메뉴 버튼 아이콘을 만들어 보겠습니다. drawable 파일을 우클릭하면 아래 화면같이 나오는데 Vector Asset을 선택해줍니다. Vector Asset을 선택하면 Asset Studio 화면만 나오는데 여기서 Clip Art를 누르면 아래 사진같이 화면이 나옵니다. 여기서 원하는 아이콘을 선택하시면 되는데 저는 dehaze 아이콘을 선택하겠습니다. 아이콘을 선택하면 아래 사진같이 나오는데 왼쪽부터 차례대로 next -> finish 버튼을 눌러서 실행하시면 됩니다. 실행이 완료가 되면 맨 왼쪽 사진처럼 xml 파일이 하나 생성 됩니다. 생성된 파일 이름을 -> navi_menu 로 변경해줍.. 2021. 5. 23.
[Kotlin][Android] Alert Dialog 다이얼로그 띄우기 안녕하세요. 이번 시간에는 Dialog를 띄워보도록 하겠습니다. 우선 Dialog가 무엇인지 알아봅시다. 안드로이드 개발자라면 당연히 안드로이드 개발자 사이트에서 봐야겠지요? developer.android.com/guide/topics/ui/dialogs 대화상자 | Android 개발자 | Android Developers 대화상자는 사용자에게 결정을 내리거나 추가 정보를 입력하라는 메시지를 표시하는 작은 창입니다. 대화상자는 화면을 가득 채우지 않으며 보통은 사용자가 다음으로 계속 진행하기 전에 조 developer.android.com 안드로이드 개발자 문서에서 설명하는 Dialog는 다음과 같습니다. A dialog is a small window that prompts the user to m.. 2021. 5. 12.
[Kotlin][Android] 안드로이드 - 스낵바(snackbar) 안녕하세요.~ 이번시간에는 안드로이드 코틀린으로 스낵바를 만들어보겠습니다. 스틱코드 (stickode.com/mainlogin.html) 이번에도 역시 빠르게 만들기 위해 스틱코드 플러그인을 사용해서 만들어보겠습니다. 스틱코드는 자주쓰는 코드를 저장해서 쉽고 빠르게 사용할 수 있고, 다른사람들의 코드도 즐겨찾기를 통해 쉽게 내코드로 등록하여 사용할 수 있어 사용하는 사람이 늘어나고, 좋은 코드가 쌓일수록 강력해지는 플러그인 입니다. 프로젝트 생성 새로운 프로젝트를 생성 했고, XML 파일 설정 (레이아웃) 스낵바를 호출하기위한 버튼두개를 생성해줍니다. 메인 액티비티 셋팅 스낵바를 호출하기위한 버튼 설정을 해주도록 하겠습니다. 뷰를 선언하고, 클릭 리스너를 추가합니다. class MainActivity :.. 2021. 5. 10.
[Kotlin][Android] 바텀 네비게이션바 만들기 머티리얼 디자인에서 제공하는 라이브러리를 사용해서 하단 네비게이션바를 만들어보겠습니다. 빌드 스크립트 설정 새프로젝트 생성 후 gradle 파일에 들어가서 dependencies 에 아래사진과 같이 머티리얼 디자인에서 제공하는 라이브러리 추가해주시고, sync Now 를 해주시면 됩니다. dependencies { implementation 'com.google.android.material:material:1.3.0' } 다음 예제에 사용할 화면을 만들어 보겠습니다. 코드를 그대로 복사/붙여넣기를 하면 아래 사진과 같이 빨간색으로 에러가 나올텐데 빨간 느낌표를 눌러서 navi_menu.xml을 자동으로 생성합니다. navi_menu.xml을 자동으로 생성하면 아래 사진과 같이 파일이 만들어집니다. 파일.. 2021. 5. 9.
[Kotlin][Android] GPS Permission 현재 위치 값 불러오기 기능 저번 시간에 Java를 통해 사용자의 위치를 TextView에 표시하는 기능을 구현했었습니다. 이번 포스팅에서는 앞선 기능을 Kotlin으로 구현해 보도록 하겠습니다. 개발 순서 1. manifest.xml 권한 추가 2. 화면 그리기 (activity_g_p_s_permission.xml) 3. 의존성 추가 4. 코드 작성(GPSPermissionActivity.kt) 5. 결과물 개발 1. manifest.xml 권한 추가 사용자의 위치를 받아 오기 위해서는 매니페스트에 권한을 추가해줘야 합니다. developer.android.com/reference/android/Manifest.permission Manifest.permission | Android 개발자 | Android Developers .. 2021. 5. 7.
[Kotlin][Android] 뷰페이저를 사용하여 화면 슬라이드 기능 만들기 뷰페이저를 사용해서 화면 슬라이드 기능를 만들어 보겠습니다. 뷰페이저(ViewPager)란? 데이터를 페이지 단위로 표시하고, 좌/우 슬라이드를 통해 페이지를 전환할 수 있도록 만들어주는 컨테이너입니다. 자체적으로 화면을 그리는 기능을 가지지는 않고, 여러 종류의 뷰(View) 위젯을 사용하여 각 뷰페이저의 페이지를 구성합니다. 참고) 안드로이드 개발자 문서 - developer.android.com/training/animation/screen-slide-2 빌드 스크립트 설정 뷰페이저를 사용하기 위해 맨 아래에 보이는 의존성 설정을 추가 해주고, sync Now를 누르면 라이브러리 추가가 완료됩니다. implementation 'androidx.viewpager2:viewpager2:1.0.0' 다음.. 2021. 4. 28.
[Kotlin][Android] Bottom Sheet 만들기 이번 포스팅에선 Bottom Sheet를 만들어 보겠습니다. Bottom Sheet는 어떤 버튼을 누르면 밑에서 올라오는 화면을 말합니다. 아래가 그 예시입니다. 먼저 화면을 간단하게 만들어 보겠습니다. 버튼을 만들어 Bottom Sheet를 나오게 할 것이니까 버튼 하나만 있는 화면을 만들었습니다. 그 다음 버튼을 누르면 띄울 Bottom Sheet를 만들겠습니다. 이 포스팅에서 만들 Bottom Sheet에는 텍스트뷰 2개와 버튼 1개를 두고, 버튼을 누르면 버튼을 눌렀다는 토스트가 나와서 버튼 클릭을 사용자에게 알린 뒤, Bottom Sheet가 닫히도록 할 것입니다. 이제 이 생각대로 Bottom Sheet가 나오도록 해보겠습니다. 먼저 Bottom Sheet의 레이아웃입니다. Bottom She.. 2021. 4. 20.