본문 바로가기

android3

안드로이드 MVC 패턴 (가장 기본적인 패턴) MVC패턴은 안드로이드 디자인 패턴 MVP, MVVM의 기초 뼈대가 되는 디자인 패턴이다. 내가 디자인 패턴을 잘 모르는 사람이다싶어도 MVC 패턴대로 개발하고 있을 확률이 높을만큼 흔하고 쉽다. Model View Controller 의 구조이다. 이미지에서 보다시피 딱 봐도 Controller에서 모든 게 이루어진다고 생각하면 된다. Model ) 데이터의 정보가 담겨 있는 곳이다. 예를 들면 data class와 같은 데이터 객체이다. data class House{ val area : String, val size : Int, val type : String } 이런 구조가 있을 것 같다. 참고로 모델은 어디에 의존하지 않기 때문에 재사용이 가능하다. 다음으로 View View ) xml 레이아웃.. 2022. 3. 24.
Android Studio setClipToOutLine() in RecyclerView 리사이클러뷰에서 아이템마다 이미지를 배경으로 주고싶은데 그 아이템 배경의 모서리가 둥글기를 원할 때가 있다. 예를 들어보자면, 이런 리사이클러뷰가 있다고 친다면, 이미지가 들어간 아이템들의 모서리가 전부다 둥글다. 이럴 경우에 일단 drawable 폴더에 radius 값을 준 형태의 xml 파일을 만든다음에 아이템의 background에 이 xml파일을 입혀주는 것까지는 원래 background를 주는 방식과 동일하다. 그 후 원래는 메인에서 setClipToOutLine(ture)를 써주면 되지만, 리사이클러뷰 같은 경우에는 아이템과 리사이클러뷰의 중간 매개체 역할을 해주는 viewHolder 파일의 bind 메소드 안에서 해당 이미지 파일에 setClipToOutLine(true)를 달아주면 된다. .. 2020. 4. 10.
Fragment에서 Activity로 화면전환 화면전환이라고 생각하면 보통 .. val intent = Intent(this, MainActivity::class.java) startActivity(intent) 형태의 Intent 사용을 생각한다. Activiy에서 Intent 사용 형식은 위의 형식과 같다. 인텐트에 대해 간단히 얘기하자면, Android에 4대 컴포넌트가 있는데, Activity, BroadCast Receiver, Service, Contents Provider 가 있다. 이 네 개는 독립적으로 역할을 수행하는 것들인데, 이 컴포넌트들 사이에서 데이터를 주고받으려고 하기 위해 사용되는 것이 "Intent"라고 할 수 있다. 그러나 Fragment는 다르다. 일단 Fragment의 생명주기를 보면.. 이런 형태로 생명주기가 구성.. 2020. 3. 1.