간단한 퀴즈 앱을 안드로이드 스튜디오에서 kotlin을 사용하여 만들어 보도록 하겠습니다.https://www.youtube.com/watch?v=b21fiIyOW4A에서 보고 따라하고 이해한 내용을 바탕으로 정리하고 쓰여졌슴을 알립니다.우선 새 프로젝트를 생
처음 화면은 퀴즈 앱을 사용하는 사용자의 이름을 받는 화면을 만들어 보겠습니다.LinearLayOut으로 시작하여 앱 이름을 알릴 수 있도록를 통해 사용하겠습니다. @string/app_name은 strings.xml에서 조정 가능하며 현재는 Quiz App입니다. 그
오늘은 문제와 간단한 토스트 메세지 남기기를 해보겠습니다.activity_main.xml의 btn_start인 id를 누를 때 기준으로 (혹시나 id가 MainActivity.kt에서 인식이 되지 않는 다면 build.gradle에서 plugins에 를 추가해 보세요.
문제를 보여주는 레이아웃을 만들기 위해 res -> layout에서 empty activity를 생성하겠습니다. 이름은 activity_quiz_question입니다. 여기서 퀴즈에 사용될 레이아웃을 만들어 보겠습니다. scrollview로 처음을 설정해주시고여기서 문
사진과 같은 곳에서 퀴즈를 보여주고 값을 넘기고 받을 QuizQuestionActivity를 생성합니다. override fun onCreate위에 변수를 선언해줍니다.주석처럼 처리할 변수를 선언하고 onCreate에서 퀴즈를 세팅하기 위해 setQuestion함수를
전 시간에 setQuestion,defaultOptionsView까지 완료했습니다.다음으로 onCreate에서 사용자이름을 받고 또 질문리스트까지 Constants에서 받아오고 옵션에서 onclick이벤트를 처리하기 위해 모든 옵션과 다음 질문으로 넘어갈 버튼에 set
여기서 결과를 보여줄 xml을 생성합니다. 또한 Activity도 생성해줍니다. 우선 xml먼저 살펴보겠습니다. LinearLayout이고 축하메세지, 사용자의 이름, 결과 값, 트로피사진 등을 설정하여 다음과 같은 화면을 가지고 있습니다.다음으로 ResultActiv
StartActivity : 새 액티비티를 열어준다.(단방향)StartActivityForResult : 새 액티비티를 열어줌과 동시에 결과 값을 전달합니다.(양방향)StartActivity는 intent에서 정의한 두 개의 액티비티의 이동 액션을 수행합니다.Start
구글 회원가입을 하고 난 이후로 로그인을 확인하도록 하겠습니다.전 꺼는 purang-구글 회원가입을 확인하시면 되겠습니다.이번에는 구글 sign in버튼을 누른 후 회원가입이나 로그인 완료 확인을 위해empty Activity로 HomeActivity를 생성한 후 la
오늘은 BottomNavigationView에 대해서 공부해보았습니다.예를 들면 위와 같이 아래쪽 부분에 메뉴가 이번 주제입니다.먼저 gradle(Module)에 dependecies부분에를 추가시켜줍니다.BottomNavigationView에서 사용될 item들은 안
오늘은 RecyclerView를 만들어 보도록 하겠습니다.먼저 보여질 layout item들을 만들어 줍니다.위 사진과 같이 post_itme.xml을 만들어 줍니다. LinearLayout안에 imageview와 textview를 통해 이메일과 사용자 모습을 넣고그
오늘은 에서 bottomnavigation view를 스크롤 감지를 통해 숨겨보도록 하겠습니다.저는 현재 activity에 bottomnavigationview가 있고 fragment에 recyclerview가 있는 상태입니다.onScrolled는 RecyclerVie
안드로이드 share창을 구현하도록 하겠습니다. 처음에는 HomeFragment에서 공유하기 이미지 클릭 시 share가 작동하도록 하려하였나 post_item의 id값 즉, 다른 layout에서 id값이 가져오는 것이 뜻대로 안되서 include 등을 통해 해결하려
저번에 공부했던 SearchView 중 menu로 만든 SearchView 말고 public class SearchView를 통해 Filter를 구현해보고자 합니다.우선 레이아웃은 이런 식으로 listitem의 post_item은 저번 포스트에 RecyclerView의
간단하게 FloatingActionButton을 통해 RecyclerView에 item을 추가해 보도록 하겠습니다.위 레이아웃 UI를 통해 화면 구성을 해주었습니다.그 다음 Activity 나 Fragment에서 원하는 곳에 Adapter를 생성해줍니다. (저는 Fra
위 처럼 표시하는 코드는 res -> menu에서 생성합니다.위 메뉴를 적용하면 됩니다.위 처럼 표시하는 코드fragmentSearch에서 코드 작성searchview아래에 recyclerview 작성하였습니다.
Fragment 사용할 때 화면 전환을 사용하게 되는데 이 때 화면 전환 시 fragment의 재생성으로 인해 데이터가 사라지는 현상이 발생하게 되었습니다.이를 방지하기 위해 상태 유지하기 위한 공부를 하게 되었습니다.저의 xml입니다. LinearLayout은 메인
현재 하고 있는 프로젝트에 리사이클러 뷰에 swipe와 drag기능을 넣고 싶어서 찾아본 내용을 공부하여 적용하도록 하였습니다.공부한 블로그는 여기입니다. 여기서 배운 내용을 토대로 이해한 것을 주석으로 정리하고 아직은 배우는 단계인지라 코드를 거의 비슷하게 사용하였습
캘린더를 사용하는 방법에 대해 배워보았습니다.Material CalendarView Github라이브러리를 이용하여 캘린더 뷰를 공부하였습니다.저는 2.0.1보다 낮은 버전을 사용하였으며 더 높은 버전을 원하신다면 github에 들어가셔서 살펴 보시면 좋을 것 같습니다
오늘은 ScrollToPosition에 대해 배워 보았습니다.ScrollToPosition은 유튜브의 홈버튼 클릭 시 최상단으로 이동하게 되는 것으로 간단한 예시를 들 수 있을 것 같습니다. 화면의 최상단(최하단)으로 이동하는 방법은 간단하게이 있지만 이 방식은 작동하
ViewPager2에 대해 공부해 보았습니다. 자세한 내용은여기에서 더 공부하실 수 있습니다.다른 분들은 이미지와 색변경, tablayout등의 예시를 사용하였지만 저는 textview로 한 번 사용해보겠습니다.먼저 viewpager2를 사용할 activity 또는
뒤로가기 만드는 방법을 공부해보았습니다.첫 번째는 기본적으로 위 사진과 같이 안드로이드에 존재하는 뒤로가기 버튼을 사용해서 뒤로가기를 구현해 보겠습니다.우선 Activity에서 뒤로가기 구현법 입니다.위 방식을 통해 구현 시 아래와 같습니다.마찬가지로 activity에
Retrofit2를 공부하다가 나온 에러입니다..이 에러는 Array가 들어와야 할 곳에 Object가 들어왔다는 뜻으로 혹시나 base_url의 json의 데이터 구조를 List형태로 변경해주어야합니다.
java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter positionLoadingViewHolder 에러가 현재 진행중인 프로젝트에서 발생하였습니다.이 문제는 검색
오늘은 안드로이드 스튜디오에서 알람을 띄우도록 하는 방법에 대해 공부해 보았습니다.Notification을 통해 앱 사용자에게 알람을 줄 수 있도록 만들 수 있습니다.Notification에 다양한 기능을 줄 수 있겠지만 지금은 간단하게 앱의 이미지와 제목, 내용만 넣
Camera와 Gallery에 접근하는 방법을 공부하였습니다!위와 같은 사진처럼 완성되는 데 버튼을 통해 카메라와 갤러리를 이동할 수 있도록 하였습니다.먼저 카메라 기능을 사용하기 전에! Manifest의 permission을 설정해줍니다!permission을 통해 사
BottomSheetFragment에 대해 배워보았습니다. 안드로이드 공식 문서에서 자세한 내용을 확인할 수 있습니다.테마 스타일을 지정해주고R.layout.bottom_sheet_dialog을 생성해줍니다.스타일과 레이아웃을 통해 코드로 바로 생성 후 show를 통해
오늘은 안드로이드의 디자인 패턴에 대해 공부해보았습니다.처음 안드로이드를 시작하며 간단한 공부용 프로젝트만 했을 때는 기능 구현에만 초점을 맞추어 구현에 급급하였지만 다시 돌아서 보니 기능 구현도 물론이고 만드는 앱의 성능에 대해 생각하며 많은 데이터나 리소스를 효율적