본문 바로가기

Android/note

(24)
[Android] SupportFragmentManager 파도타기 Fragment의 BackStack 과정에 대해 알아보다가 supportFragmentManager는 어떤 과정으로 사용이되는거지...? 싶어서 알아본 supportFragmentManager 일단 Fragment를 사용하다보면 supportFragmentManager.beginTransaction() 위와 같은 코드를 굉장히 많이 사용했는데 어떻게 FragmentManager가 동작하는지 알고싶었음.. [0] SupportFragmentManager Activity와 관련있는 (Activity 위에서 사용 될) Fragment를 위해 상호작용을 목적으로 하는 FragmentManager를 생성한 후 조작을 가능케하는 역할을 함! [1] supportFragmentManager /* FragmentAct..
[Android] Fragment -> DialogFragment -> Fragment 데이터 처리 문제상황 1. List 를 보여주는 Fragment에서 data 추가를 위해 DialogFragment 호출 2. DialogFragment 에서 저장 버튼 클릭 시, interface 를 통해 List 를 보여주는 Fragment 로 데이터 전달 3. DialogFragment 종료 4. Room Database 에 insert 한 후, 최신 List 가져와 UI 에 보여주기 그런데 4번의 최신 List 를 가져와 UI 에 보여주기 부분이 제대로 이루어지지 않음 나의 예상 Fragment -> DialogFragment 이동 시, Fragment 의 생명주기 : onResume() DialogFragment -> Fragment 이동 시, Fragment 의 생명주기 : onResume() -> onP..
[Android] Android Studio의 open file list 가 안보일때 이게 뭔 소린가 싶지만 소스 파일들을 클릭했을 때 상단에 클릭했던 파일들이 보여지지 않을때? 아무튼 Material Theme로 변경했는데 상단에 노란색으로 표시한 것 처럼 파일트리?가 안보였다ㅠ 저 부분의 이름이 뭔지 몰라서 계속 구글에 open file list jetbrains file list fix 이런식으로 계속 검색해봤는데 사실 tab 이었다 상단의 Window -> Editor Tabs -> Configure Editor Tabs 를 클릭해서 들어가면 Tab placement 가 None 로 되어있어서 설정이 안되어있던 것 Top 으로 변경해주면 다시 되돌아온다! 야호!
[Android] Firebase Realtime Database를 REST로 사용할 때 key값에 "이제는" 접근한 사람 지난 포스팅에서 key값으로 저장했을 때 접근하지 못해서 0, 1, 2와 같은 list의 형태로 저장을 해놓은 과거의 나 근데 이제 알아냈어요! 사진에서와 같이 각각의 데이터의 key 값인 -My1CqVip8Y4pDNElxAQ, -MyDS0h0VDWRyWT_vF2g에 접근하려고 하였는데 지난번에는 실패했습니다ㅠ 시도한 방법 data class FriendListDAO( @SerializedName("name") val friendInfo: List ) data class FriendDAO( @SerializedName("key") var key: String = "", @SerializedName("name") val name: String = "", @SerializedName("image_path")..
[android] Firebase Realtime Database를 REST로 사용할 때 key값에 접근하지 못한 사람 프로젝트를 수정하려다가 firebase도 restAPI로 사용을 할 수 있다는 것을 알게되었다. (안되는 줄 알았던 것은 비밀) 근데 제목을 어떻게 지어야할지를 모르겠다. 아무튼 시작~! coroutine을 사용하면서 restAPI로 변경하고 있었는데 의도치않게 시간을 많이 보낸 부분이 있었다. 사진을 보기쉽게 나타내면 아래와 같다. 여기서 친구 key는 firebase에서 생성해주는 key값이다. 위의 데이터를 json으로 표시하게되면 이렇게 표시가 된다. 그래서 그게 뭐가 문제였는데? 이게 뭐가 문제야? 라는 생각이 들 수 있겠으나, 친구의 key값을 data class에 어떻게 대입을 시켜서 가져와야하는지에 대해 고민이 되었다. 왜냐면 따로 정해진 name이 없을뿐더러, 검색을 해보았을 때 내가 원..
[Android] RecyclerView의 호출 순서 면접을 보게되었는데, 신경쓰지 않고 있었던 RecyclerView의 순서에 대해 질문이 들어왔다. 항상 RecyclerView의 adapter를 구현할 때마다 반드시 오버라이드 해야 하는 메서드는 3개 그런데 한 개의 중요한 메서드가 또 있었다! getItemViewType() 사실 나도 선물 기록 어플리케이션을 하며 사용했었던 메서드였는데 그때는 처음 들은 것 처럼 또잉,,? 그것이 모지,,?라는 생각이 가득했다. 그래서 호출 순서를 정리해보아야겠다. 주로 오버라이드하여 사용되는 메서드는 4개! onCreateViewHolder() public final VH createViewHolder(ViewGroup parent, int viewType) { ... } 👉 정의한 ViewHolder를 생성하고 ..
Uni-Directional Architecture GDSC에서 한 프로젝트에 참여하게 되었는데 UDA를 바탕으로 진행하신다고 하셔서 공부하게 되었다! 사실 MVP, MVC, MVVM만 들어봤지 UDA? 완전 생소 그 자체였다. 그런데 한번 정독하고나서야 생각보다 머릿속으로 잘 그려지는 것 아닌가? 신기했다! Unidirectional data flow on Android: The blog post (part 1). Learning how we can implement unidrectional data flow architecture on Android proandroiddev.com 위의 사이트를 해석해가며 노션에 정리한 내용을 토대로 블로그에도 기록해보려고 한다! 아자자! Uni-Directional? Uni : '하나'의 뜻을 가진 접두사 Direc..
[Android] Design Pattern - MVC, MVP, MVVM 채용공고를 보게되면 흔하게 볼 수 있는 디자인 패턴 어렴풋이 알고있던 디자인 패턴을 정리하기 위해 포스팅을 하게 되었다. MVC (Model - View - Controller) 👉 사실 디자인 패턴을 모르고 안드로이드를 시작하게 되었을 때 사용하게 되는 디자인 패턴이라 생각되었다. 왜냐하면, 처음 안드로이드를 접하고 프로젝트를 진행하다보면 단순히 activity 또는 fragment에 모든 코드를 작성하는 모습을 볼 수 있다. MVC가 하나의 Activity 또는 Fragment에 Model과 View를 정의하여 사용하는 디자인 패턴이기 때문에 그런 생각이 든 것 같았다. Model application의 data 실제 비즈니스 로직을 처리 database, network와 연결되어 데이터를 처리 Vi..