뷰 모델 클래스를 사용할 때, 함께 사용할 수 있는 좋은 기능이 라이브 데이터입니다. 라이브 데이터는 관찰 가능한 데이터를 담아두는 클래스입니다. 쉽게 말해, 데이터를 지켜보고 있다가 변경이 되면, 화면을 다시 그려줄 수 있도록 도와줍니다. 먼저 라이브 데이터의 기본적인 구성을 알아 봅시다. 라이브 데이터의 객체를 만드는 방법은 다음과 같습니다. currentName 변수는 라이브 데이터를 식별하는 역할을 합니다. class NameViewModel : ViewModel() { val currentName: MutableLiveData by lazy { MutableLiveData() } ** 뷰 모델 클래스 내용 ** } 이제 액티비티에 정의된 함수 부분을 살펴 봅니다. nameObserver 부분이 ..
해당 프로젝트의 이전에 작성한 코드를 뷰바인딩으로 바꿔보겠습니다. 모듈 단위의 build.gradle에 뷰 바인딩을 선언하면, 레이아웃 XML 파일들의 이름 뒤에 Binding이 붙은 채로 클래스가 생성되게 됩니다. 우선 아래의 코드 처럼, 전역 변수로 binding을 선언하는데, 타입으로는 뷰 결합으로 생성된 ActivityMainBinding을 지정합니다. 그리고 binding에 layoutInflater로 뷰를 가져올 수 있도록 선언하고, view에는 binding.root를 선언합니다. binding.root는 바인딩이 가지는 프로퍼티인데 root를 통해서 어떤 뷰를 가지고 있는지 알게됩니다. 이로써 binding을 사용해 원하는 XML 뷰를 가져올 수 있습니다. private lateinit v..
- Total
- Today
- Yesterday
- 리스트뷰
- 2019년 사건사고
- bmi 계산기 만들기
- view binding
- 안드로이드 스튜디오 에러
- 안드로이드 앱 만들기
- android adapter
- lazy init
- 인텐트
- 안드로이드 어댑터
- ToDo List 앱 만들기
- 메소드 오버라이딩
- 2021년 사건사고
- 리사이클러뷰
- 뷰 바인딩
- 탭레이아웃
- findViewById
- 선형 레이아웃
- notifyDataSetChanged
- addView
- RecyclerView
- tabLayout
- Bmi Calculator
- 미제사건
- 상대적 레이아웃
- 2007년 사건사고
- 자바스크립트 배열
- 대한민국 미제사건
- 애드뷰
- 안드로이드 프로젝트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |