inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

모던 안드로이드 - 코틀린과 Jetpack 활용

[Kotlin] DataBinding

Kotlin DataBinding

231

지현명

작성한 질문수 72

1

MainViewModel에서 
var todos: LiveData<List<Todo>>
init {
todos = getAll()
}

이 부분을 프로퍼티로 변경하면 될 줄 알았는데
안됩니다.
val todos: LiveData<List<Todo>>
get() {
return getAll()
}
프로퍼티를 사용 할 수 있는 방법이 궁금합니다.

android kotlin jetpack

답변 7

1

지현명

val todos = db.todoDao().getAll()
더 심플한 방법을 알려 주셔서 감사합니다.

1

오준석

아. 제가 착각했네요. getter로 리턴하도록 하면 데이터바인딩으로 반영이 안 되네요.

1

오준석

이상하네요. 저도 혹시나 해서 제공해 주신 getter 구현해서 확인해 봤는데 잘 동작했습니다. 혹시 액티비티 쪽에서 todos를 바라보도록 수정하는 것을 잊거나 하지는 않으셨을까요?

1

오준석

getAll() 메서드는 없애도 되고요. 다음과 같이 프로퍼티로 바로 접근하시면 됩니다.

val todos = db.todoDao().getAll()

제시해 주신 getter 코드도 잘 동작할 것 같은데요

0

지현명

<TextView
android:id="@+id/result_text"
android:text="@{viewModel.todos.toString()}"

강의에서 사용한 성공했던 소스는 수정하지 않고
MainViewModel에서 프로퍼티만 추가했습니다.

0

지현명

메뉴얼을 보니 LiveData가 BaseObservable의  기능을 포함하고 있었네요. 

0

지현명

BaseObservable를 사용해야 하는건가 고민하고 있었는데 답변을 주셨네요. 감사합니다. 

val todos: LiveData<List<Todo>>
get() {
return getAll()
}
이렇게 하면 에러는 안나는데 화면에 반응이 없습니다.

Room_DB코틀린 버전에서 에러 나시는 분들

1

303

1

Room db kotlin 관련질문

0

289

2

Room db kotlin 강의중에서

0

426

3

공적 마스크 조회 앱 자바 버전 질문입니다.

0

394

1

RecyclerView Adapter에서 ViewModel 접근에 관하여 질문 드립니다.

0

1406

1

네비게이션 그래프

0

231

1

Repository에서 Error처리를 하고 싶은데 잘 모르겠습니다.

0

759

1

getAll을 직접부를 때 무한무프 질문있습니다.

0

210

1

라이브 데이터 + 데이터 바인딩 질문드립니다!

0

221

1

/?m=5000 에 대해서 질문드립니다.

0

232

2

@Inject lateinit var repository: MyRepository

0

287

1

이번편 강의의 3:52 부분까지 공부했는데 에러가 걸립니다

0

419

2

let이나 apply는 주로 어떤 상황에 사용하나요?

0

267

2

Call<StroeInfo> 를 StoreInfo로 바꾸는 부분 질문

0

243

1

Room DB 파일을 확인하고 싶어요.

0

2344

1

SavedStateHandle 앱 종료 시킨 후, 다시 열면 0으로 초기화 되어있습니다ㅠ

0

478

1

안녕하세요.

0

450

4

NullPointerException이 뜨는데 이것도 마스크 재고 API 중지 때문인가요

0

288

1

viewModel 질문 있습니다.

0

392

1

suspend

0

244

2

retrofit2에서 코루틴을 이용하는 이유가 무엇인가요?

1

278

2

UpdateItems 생성

0

151

1

질문있습니다.

1

239

3

질문있습니다!

0

271

1