본문 바로가기

분류 전체보기

(96)
[안드로이드] Viewbinding 우리는 안드로이드 개발을 하면서 Layout에 있는 Button, TextView 등 값을 변경, 클릭 등 이벤트에 대한 동작을 처리하기 위해 findViewById를 사용하여 뷰 객체를 가져와 사용하였다. 만약 Layout에서의 뷰 객체가 많아지고 모두 이벤트 동작을 처리해줘야 할 때, 이와 같은 방법은 비효율적일 것이다. 뷰 객체가 10개일 경우, findviewbyid로 뷰 객체 선언을 10번을 해주어야 하기 때문이다. Viewbinding은 이러한 문제점을 해결한 findviewbyid를 대체하는 기능이다. 공식문서 https://developer.android.com/topic/libraries/view-binding?hl=ko 사용법 1. setting 제일 처음으로 build.gradle(M..
[안드로이드] RecyclerView 리사이클러뷰 개념 및 사용법 우리는 안드로이드 앱을 만들 때 어떠한 목록을 구현해야 될 상황이 생긴다. 구현할 데이터 리스트를 받아 화면에 띄워줘야 하는데, 받는 데이터의 개수는 유동적이며, 내용 또한 모두 다르기 때문에 우리가 하나하나 구현해 줄 수는 없다. 이를 해결하기 위해 처음에 나온 것이 ListView이며 ListView의 단점을 보완하여 다시 나온 것이 RecyclerView이다. RecyclerView와 ListView의 차이 ListView RecyclerView 스크롤로 인해 없어진 객체(목록)은 삭제되며, 반대로 추가로 보여지는 객체는 생성된다. 스크롤로 인해 없어진 객체는 삭제되지 않고 뒤쪽으로 재배치되어 재사용된다. 생성과 삭제가 반복되기에 비효율적이다. 객체를 재사용하기 때문에 효율적이다. 사용법 시작하기에..
[디자인 패턴] MVVM 디자인 패턴은 MVC를 시작으로 MVP을 거쳐 MVVM로 발전해왔다. 그러나 세가지 방법 모두 서로의 장단점이 있기 때문에 모두 사용되고 있으며, 프로젝트의 방향성에 맞는 디자인 패턴을 선택하여 사용하면 된다. MVVM 패턴 MVVM 모델은 기존의 MVC 모델과 MVP 모델에서의 View와 Controller/Presenter 사이에서의 강한 의존성을 약화시킨 모델이다. 기존에는 Controller/Presenter에서 UI 조작이 일어났다면, MVVM 모델에서의 ViewModel은 UI를 조작하지 않는다. 대신 View에서 ViewModel을 관찰하며 UI를 업데이트를 하는데 이를 Observe라 한다. 필요성 안드로이드는 사용할 수 있는 리소스가 제한적이다. 이로 인해 운영체제는 언제든 앱 구성 요소..
[디자인 패턴] MVC 패턴 디자인 패턴이란? 인터넷에 검색해보면 "공통적으로 발생하는 문제에 대해 재사용이 가능한 해결책" 이라 나온다. 개발의 역사가 길지는 않지만 지금까지 개발하면서 생기는 공통적인 문제들을 쉽게 해결할 수 있도록 만든 것이 디자인 패턴이라고 생각한다. 안드로이드 디자인 패턴에는 대표적으로 MVC, MVP, MVVM가 있다. MVC 패턴이란? MVC란 Model - View - Controller 의 약자이다. Model - 데이터 View - 사용자 화면 Controller : Model 과 View를 연결해주는 관제탑 역할 MVC의 관계는 다음과 같다. Model Model은 데이터와 관련된 작업을 하는 곳 안드로이드에서는 Data Class가 Model을 담당하고 있다. View View는 사용자가 직접적..
[안드로이드] 이미지 Glide 정적인 이미지의 경우 XML 파일에서 이미지를 지정해주기에 Glide를 사용할 필요는 없다. 그러나 동적인 경우, 서버에서 이미지 파일의 경로를 얻어와 이미지를 구현해야 할 경우 대표적인 프레임워크 중 하나인 Glide를 사용한다. Glide의 다양한 기능들을 알아보고 싶다면 Glide 공식 문서를 참고 바랍니다. Glide 사용 방법 기본 설정 settings.gradle repositories { google() mavenCentral() } build.gradle(Module) dependencies{ implementation 'com.github.bumptech.glide:glide:4.16.0' } Code 공식 문서에서의 사용법 -Java- ImageView imageView = (Image..
[안드로이드] 안드로이드 생명주기 우리가 안드로이드 App을 사용하다 보면 로그인 화면, 회원가입 화면부터 메인, 검색 등 다양한 화면들을 접하게 된다.이 각각의 화면들은 Activity에 속해 있으며, Activity에는 생명 주기가 있다. 보다 자세한 내용은 공식 문서를 참조 바랍니다. 안드로이드 생명 주기Activity 생명주기에는 다음과 같이 6가지로 이루어져 있다.1. onCreate()Activity를 실행할 때 처음으로 호출하며, XML을 정의한다.단 한번만 호출되기 때문에 한 번만 초기화하면 되는 것들은 해당 상태에서 초기화하게 됩니다. 2. onStart()onCreate() 함수 이후 호출Acitivity가 사용자에게 표시되며, Activity를 포그라운드에 보내 상호작용 할 수 있도록 준비한다. 3. onResume(..