분류 전체보기

    Kotlin 코틀린의 Intent와 Inflate

    Kotlin 코틀린의 Intent와 Inflate

    Intent 와 Inflate 1. Intent 란? Intent란 어떤 메시지를 담고 있는 하나의 객체이다. 이 메세지는 어떤 액티비티로 이동할지, 어떤 서비스를 시작할지 등 목적지 정보를 갖고 있거나 옮겨야 하는 데이터를 갖고 있을 수도 있다. 기본 사용 사례는 크게 3개로 나눌 수 있다. 1. 1 Intent 기본 사용 사례 액티비티 시작 : 액티비티의 새 인스턴스를 시작하려면 인텐트를 startActivity()로 전달하면된다. 인텐트는 시작할 액티비티를 설명하고 모든 필수 데이터를 담는다. 서비스 시작 : 서비스를 시작해 1회성 작업(파일 다운로드 등)을 수행하게 하려면 인텐트를 startService()에 전달하면 된다. 인텐트는 시작할 서비스를 설명하고 모든 필수 데이터를 담고 있다. 서비스..

    Kotlin 코틀린의 Layout

    Kotlin 코틀린의 Layout

    Layout 안드로이드 앱에서 화면에 보이는 요소(Button, TextView 등)을 뷰(View)라고 하고, 여러 뷰들을 포함하고 배치하는 역할을 하는 것을 레이아웃이라고 부른다. 안드로이드가 기본적으로 제공하는 레이아웃들은 종류별로 기능이 다르기 때문에 용도에 맞게 사용해야한다. 😊 안드로이드에서 제공하는 5가지 대표적인 레이아웃은 다음과 같다. 제약 레이아웃(ConstraintLayout) : 제약 조건을 사용하여 화면을 구성. 안드로이드에서 자동으로 설정하는 디폴트 레이아웃이다. 리니어 레이아웃(LinearLayout) : 한 쪽 방향으로 차례대로 뷰를 추가하여 화면을 구성 상대 레이아웃(RelativeLayout) : 부모 컨테이너나 다른 뷰와의 상대적 위치로 화면을 구성 테이블 레이아웃(Ta..

    Kotlin 코틀린의 Lifecycle

    Kotlin 코틀린의 Lifecycle

    Lifecycle 1. 생명주기 (Lifecycle) 안드로이드에는 리소스 제한이 존재하여 Activity가 항상 살아있지 못한다. Activity는 Activity가 보여주는 화면(View)이 화면 상에서 뒤로 가거나, 사라지게 될 경우에 특정한 메서드들을 호출하게 되는데, Activity의 Lifecycle은 Activity가 각각의 상황에서 어떠한 메서드를 호출하는지 알려준다. 위 그림은 구글 공식문서에 있는 Activity의 Lifecycle이다. 생명주기를 정확히 이해하고 때에 맞는 적절한 작업을 해야만 안정적인 앱을 만들 수 있다. 그렇다면 하나씩 무슨 역할을 하는 메소드인지 알아보자. 1.1. onCreate class MainActivity : AppCompatActivity() { ove..

    Kotlin 코틀린의 ViewModel

    Kotlin 코틀린의 ViewModel

    ViewModel 1. 정의 ViewModel 이란 Android Jetpack의 구성 요소 중 하나로, MVVM(Model - View - ViewModel) 디자인 패턴으로부터 파생된 단어이다. ViewModel의 정의를 내리자면 아래와 같다. 더보기 👍 Activity와 Fragment와 같은 UI 컨트롤러의 로직에서 데이터를 다루는 로직을 분리하기 위해서 등장한 Android JetPack 라이브러리 그렇다면 이러한 ViewModel이 필요한 이유가 무엇일까? 2. 필요성 안드로이드는 모바일 OS 특성상 리소스에 대한 많은 제약들이 존재한다. 그에 따라 리소스 제거가 요구되는 이벤트가 발생하게 되는데 그러한 이벤트가 발생했을 때 Activity와 Fragment 같은 UI 컨트롤러에 대한 제거와 ..