250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Button
- viewmodel
- livedata
- binding
- android
- appbar
- scroll
- 안드로이드
- 앱바
- drift
- 앱
- Flutter
- Kotlin
- LifeCycle
- 테스트
- ScrollView
- textfield
- Dialog
- tabbar
- data
- Coroutines
- textview
- intent
- DART
- activity
- 계측
- TEST
- Compose
- Navigation
- CustomScrollView
Archives
- Today
- Total
Study Record
[안드로이드] LiveData 참고사항 본문
728x90
😶 기본 선언 + ViewModel
MutableLiveData 는 Mutable 이 붙어있으므로 변경가능하다. LiveData 로 선언된 변수는 값을 직접 변경할 수 없다.
class OrderViewModel : ViewModel(){
private val _quantity = MutableLiveData<Int>()
val quantity: LiveData<Int>
get() = _quantity
}
😶 Transformations.map()
LiveData 에 Transformations 메서드를 사용하면 LiveData 의 값을 다른 값으로 변경할 수 있다.
private val _price = MutableLiveData<Double>()
val price: LiveData<String> = Transformations.map(_price) {
"${_price.value}원"
}
_price 값이 변경될 때마다 price 값은 "${_price.value}원" 으로 업데이트된다.
728x90
'안드로이드' 카테고리의 다른 글
[안드로이드] 단위 테스트 참고사항 (0) | 2023.08.03 |
---|---|
[안드로이드] Task 와 Back Stack (0) | 2023.08.02 |
[안드로이드] 데이터 바인딩(Data Binding) 참고사항 (0) | 2023.08.02 |
[안드로이드] ViewModel 참고사항 (0) | 2023.08.02 |
[안드로이드] navigation 참고사항 (0) | 2023.08.01 |