일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 사전청약
- 3rd framework
- 용산 호반써밋 에이디션
- kotlin
- 새마을금고
- gradle
- 예금
- Swift
- RETROFIT
- JetPack
- CHAT GPT
- ndkVersion
- EditText
- 달러예금
- Android
- Andorid
- Android Studio
- ChatGPT
- audio record
- java
- BindingAdapter
- Mac
- ios
- ndk r24
- 청약
- Data Binding
- MG더뱅킹정기예금
- 고금리
- KB
- arm-linux-androideabi
- Today
- Total
pear
[android]data binding 2 - BindingAdapter example EditText 본문
databinding send view & BindingAdapter
ViewModel
class ViewModel() : ViewModel() {
//If want update view data then use LiveData
//EditText support String simple
private val _text = MutableLiveData(String)
val data: LiveData = _text
//EditText not support Int Type need BindingAdapter
private val _num = MutableLiveData(String)
val num: LiveData = _num
layout
<data>
<variable
name="viewmodel"
type="com.test.name.ViewModel" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
...
//simple '{data}'
<EditText
android:text='@{viewmodel.text}'
/>
//need BindingAdapter Int
<EditText
android:text='@{viewmodel.num}'
/>
BindingAdapter
object EditTextDataBindingAdapter{
//EditText Int Type BindingAdapter
//need to static
@JvmStatic
//binding target "android:text"
@BindingAdapter("android:text")
// function name is user define
fun setText(view: TextView, text: Int)
{
view.text = text.toString()
}
}
[android]data binding 3 - Two-way data binding & BindingAdapter example EditText
'android > kotlin' 카테고리의 다른 글
[android]data binding 5 - mistake error (0) | 2023.06.01 |
---|---|
[android]data binding 4 - app custom attribute (0) | 2023.06.01 |
[android]data binding 1 - simple example EditText (0) | 2023.06.01 |
[android]data binding 3 - Two-way data binding & BindingAdapter example EditText (0) | 2023.06.01 |
[kotlin] event interface channel 활용 (0) | 2023.05.24 |