728x90
반응형

Android/Kotlin 23

<정리> 메모 앱 만들기 7일차

7일차라고 하지만 거의 20일만에 만진다... 그 사이에 팀플도 있고 과제들도 있고 연말연초고 해서 이 앱은 건드릴 일이 없었다. 그래서 오랜만에 보니까 많이 어색하고 '이걸 왜 이렇게 했지?' 하는 부분도 많고 다시 익숙해지는데 시간이 걸렸다. 아마 이번주에는 조금 만질 시간이 있을 거 같아서 좀 다듬고 드디어 메모장 기능을 만들어볼 수 있을 거 같은 느낌? 1. 뷰바인딩 적용 이전까지는 findViewById를 썼었는데 오랜만에 다시 시작하니까 싹다 뷰바인딩으로 바꿨다. 그 과정중에 레이아웃 xml 파일에 include 했던 것들이 묶이지 않는 걸 알고 activity_main.xml로 다 몰아넣었다. 2. 툴바 검색창 관련 세팅 드디어 검색창 옆에 x 버튼을 넣었다.(정확히는 ImageView) 나..

Android/Kotlin 2024.01.09

<정리> 메모 앱 만들기 6일차

오늘은 UI 상에서 나왔던 예외사항들을 처리하는 시간이 대부분이었다. 1. 카테고리 목록 처리 툴바의 제목 부분이나 옆의 방향 버튼을 클릭하면 카테고리 목록이 나오고 이 상황에서 5일차까지만 해도 툴바를 터치하는 경우에 카테고리 목록이 사라지도록 했다. 그 이후에야 툴바의 버튼들이 원래의 역할을 했다. 그런데 문제가 또 있었다. 아래의 메모장 구역을 클릭할 때와 뒤로가기 버튼을 눌렀을 때는 카테고리 목록을 그냥 둔 채로 자기 일을 한다는 문제 말이다!! 먼저 카테고리 목록 영역 이외의 영역을 터치했을 때를 어떻게 처리할까 하다가 지금 카테고리목록을 레이아웃을 이용해 띄웠듯이 보이지 않는 레이아웃을 만들어서 그 영역이 카테고리 목록이 나올 때 같이 나와고, 클릭했을 때 다같이 사라지게 하면 되지 않을까라는..

Android/Kotlin 2023.12.22

<정리> 메모 앱 만들기 5일차

1. 메모 리스트 만들기(1) 처음에는 이걸 리스트뷰를 가지고 구현했다. 순서는 Memo 데이터 클래스를 만들고 data class Memo(val title: String, val content: String, val day: String) 메인 액티비티 레이아웃에서 리스트뷰를 추가하고 ... 리스트 하나하나에 대한 레이아웃을 만들고 메인 액티비티에서 리스트뷰 객체와 들어갈 내용들을 배열리스트로 만든 다음 // 리스트뷰 변수 private val listView: ListView by lazy { findViewById(R.id.list_view) } val memoList = arrayListOf( Memo("1212", "dkdkfjfk", "12.01"), Memo("1212", "dkdkfjfk..

Android/Kotlin 2023.12.21

<정리> 메모 앱 만들기 4일차

오늘도 다른 공부하느라 딱 한 가지 기능만 추가했다. 그 외에는 주석 달기와 코드 구조 정리를 했다. 1. 액션바 흐름 완성 어제까지 해서 이제 액션바에서 내가 원하던 기능의 95퍼센트까지는 완성했다. 나머지를 채우기 위해서 오늘 한 것은 카테고리 목록이 열려있는 상태일 때 액션바의 모든 부분이 카테고리 목록을 닫는 걸 우선시하는 거였다.(이거 해도 남은 게 하나 있기는 하다.) 그걸 위해서 먼저 다른 기능들을 하는 옵션 메뉴들을 제어할 필요가 있었다. 그래서 onOptionsItemSelected에 가서 각 버튼마다 카테고리 목록이 보일 때 그걸 먼저 닫도록 했다. 전에 만들어둔 setCategoryMenu() 잘 쓰고 있다...가 아니라 너무 같은 조건이 반복되는게 보기가 좋지 않았다. 어떻게 할까 ..

Android/Kotlin 2023.12.20

<정리> 메모 앱 만들기 3일차

오늘은 뭐 많이 만지지는 않았다. 1. 툴바 레이아웃 수정 툴바 타이틀을 나는 레이아웃 상에서 만들었고 그 타이틀의 의미는 카테고리였다. 그래서 카테고리를 변경할 수 있는 이미지 뷰(버튼)를 추가했다. 사용할 이미지는 기본적으로 제공하는 위,아래 화살표를 가져왔다. 2. 메인 레이아웃 수정 여기도 약간 수정이 들어갔는데 그 이유는 툴바 아래에 카테고리 목록을 띄우기 위한 공간을 만들기 위해서였다. 하지만 생각이 잘 나지 않더라 지금 레이아웃에서는 숨겨놨다가 보이는 걸로 하면 공간을 차지해서 안 될 거고 bottomsheet를 수정해서 하는 것도 원하는 방식은 아니었다. 팝업도 마찬가지고... 그러다가 튜터님께 갔는데 바로 가능성이 보이는 방법을 제시해주시더라 바로 레이아웃을 ConstraintLayout..

Android/Kotlin 2023.12.19

<정리> 메모 앱 만들기 2일차

2일차가 시작되었다. 이번에는 기능을 추가하거나 그런 것보다는 기존 기능을 보완하고 완성하는 쪽으로 진행했다. 1. 내비게이션 드로어 완성 디자인적으로나 기능적으로 완성이 아니라 UI 구성 측면에서 완성이 되었다. 어떻게 보면 이 UI 구성을 하기 위해서 안드로이드 스튜디오에서 주는 NavigationView를 쓰지 않고 따로 만들었다고 볼 수 있다. 저번에 헤더까지는 만들었었고 오늘은 바디와 푸터를 구성해서 넣어줬다. 바디는 ConstraintLayout안에 버튼 역할을 할 ImageView와 버튼 이름의 역할을 할 TextView가 6개 있고 아래에 큰 이미지 버튼을 생각하고 하나 넣어놨다. ConstraintLayout의 높이는 wrap_content로 지정했다. 이거 하나 넣었는데 엄청 길다.....

Android/Kotlin 2023.12.15

<정리> 메모 앱 만들기 1일차

새로운 앱 만들기가 시작되었습니다~~!! 이번에 뭘할까 정말 고민이 많았고 그 사이에 시간도 없어서 미뤄지다가 드디어 오늘 정해졌습니다. 제가 요즘 많이 사용하고 있는 메모 앱을 선택해서 최대한 비슷하게 따라해보고 가능하다면 다른 기능들도 추가적으로 넣어보려고 합니다. 이번 앱 만들기를 통해서 UI 구성이라던가 화면 간 데이터 주고 받는 것에 대해 좀 깊이 알 수 있지 않을까 기대 반 피로 반입니다. 전체 코드는 파일이랑 코드들이 정리가 좀 되면 깃허브 링크로 올릴 예정입니다. 1. 커스텀 Toolbar 만들기 아... 이거 오래 걸렸다. 내가 원하는 모양으로 하려니까 커스텀을 약간 해야하더라 내용이 어려운 게 아니라 관련 정보를 찾는 게 힘들었다. 내가 한 방식은 가장 기본적은 틀은 레이아웃에서 만들고..

Android/Kotlin 2023.12.13

<정리> 이상형월드컵 앱 만들기 5일차

오랜만에 손대는 앱이네... 저번 4일차 이후로 4일만에 다시 할 수 있게 됐다. 그 사이에 과제하느라 정신이 없어서 여기에 힘을 쓸 여력이 없었다. 그래도 오늘은 여유가 조금 있어서 만들기를 진행했고 생각했던 기능들은 모두 구현하여 앱 만들기를 마쳤다. 깃허브 : https://github.com/heesoo-park/Private_IdealTypeWorldCupApp 1. 주석 달기 지금까지 주석을 거의 안 달고 진행을 하고 있었더라 4일만에 보는 것인데도 약간 헷갈려서 다른 거 하기 전에 먼저 주석을 달았다. 이번에 과제하면서 알게 된 건데 /* * 여기에 주석 내용 쓰기 */ 이렇게 주석을 쓰면 해당 함수나 변수를 쓰는 곳에서 마우스 커서를 올리면 이 주석이 설명을 뜬다...!! 아주 좋다 2. ..

Android/Kotlin 2023.12.08

<정리> 이상형월드컵 앱 만들기 4일차

1. 이미지 클릭 이벤트 선택 화면에서 이미지를 클릭하는 것으로 화면전환이 되게 코드를 작성했다. SelectFragment에서 이미지를 연결하고 setOnClickListener를 사용하여 SelectActivity에 만들어둔 moveToNextMatch 함수를 실행해 화면이 전환된다. // SelectFragment.kt class SelectFragment : Fragment() { ... override fun onViewCreated(view: View, savedInstanceState: Bundle?) { ... leftImg.setOnClickListener { (activity as? SelectActivity)?.moveToNextMatch() } rightImg.setOnClickLi..

Android/Kotlin 2023.12.04

<정리> 이상형월드컵 앱 만들기 3일차

아마 이번 3일차까지 지금까지 배웠던 것들의 복습이고 다음부터가 배운 걸 응용하는게 아닌 새로운 걸 해보는 시간이 되지 않을까 싶다. 1. 선택화면의 상하 화면전환 선택화면에서 이미지를 클릭하면 다음 대결구도를 아래에서 올라오게 하려고 하는데 이를 위해서 ViewPager 설정이 필요했다. 다른 건 아니고 activity_select.xml에 만들어놓은 ViewPager2 컴포넌트 안에 한 줄만 추가로 적었다. 코드로 하는 방식도 있다고 하지만 나는 이렇게 했다. android:orientation="vertical"/ 2. SelectActivit와 SelectFragment 연결 이거 사용에 익숙해져보려고 하지만 아직까지도 쉽지 않다. 10번 정도 이런 기능을 쓰는 앱을 만들어봐야 눈감고도... 까지..

Android/Kotlin 2023.12.01
반응형