āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻœā§‡āϟāĻĒā§āϝāĻžāϕ⧇āϰ āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻ…āĻ‚āĻļāĨ¤

āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻšāϞ āĻāĻ•āϟāĻŋ āϏāĻžāĻĒā§‹āĻ°ā§āϟ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āϝāĻž āφāĻĒāύāĻžāϕ⧇ āφāĻĒāύāĻžāϰ āϞ⧇āφāωāĻŸā§‡ āĻĨāĻžāĻ•āĻž UI āωāĻĒāĻžāĻĻāĻžāύāϗ⧁āϞāĻŋāϕ⧇ āφāĻĒāύāĻžāϰ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻĄā§‡āϟāĻž āϏ⧋āĻ°ā§āϏāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽā§‡āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ āĻāĻ•āϟāĻŋ āĻ˜ā§‹āώāĻŖāĻžāĻŽā§‚āϞāĻ• āĻŦāĻŋāĻ¨ā§āϝāĻžāϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āφāĻŦāĻĻā§āϧ āĻ•āϰāϤ⧇ āĻĻ⧇āϝāĻŧ⧎

āϞ⧇āφāωāϟāϗ⧁āϞāĻŋ āĻĒā§āϰāĻžāϝāĻŧāχ āϕ⧋āĻĄ āϏāĻš āĻ•āĻžāĻ°ā§āϝāĻ•āϞāĻžāĻĒ⧇ āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰāĻž āĻšāϝāĻŧ āϝāĻž UI āĻĢā§āϰ⧇āĻŽāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻĒāĻĻā§āϧāϤāĻŋāϗ⧁āϞāĻŋāϕ⧇ āĻ•āϞ āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖ āĻ¸ā§āĻŦāϰ⧂āĻĒ, āύāĻŋāĻšā§‡āϰ āϕ⧋āĻĄāϟāĻŋ āĻāĻ•āϟāĻŋ TextView āωāχāĻœā§‡āϟ āϖ⧁āρāĻœā§‡ āĻĒ⧇āϤ⧇ findViewById() āĻ•āϞ āĻ•āϰ⧇ āĻāĻŦāĻ‚ viewModel āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞ⧇āϰ userName āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ⧇āϰ āϏāĻžāĻĨ⧇ āφāĻŦāĻĻā§āϧ āĻ•āϰ⧇:

āϕ⧋āϟāϞāĻŋāύ

findViewById<TextView>(R.id.sample_text).apply {
    text = viewModel.userName
}

āϜāĻžāĻ­āĻž

TextView textView = findViewById(R.id.sample_text);
textView.setText(viewModel.getUserName());

āύāĻŋāĻšā§‡āϰ āωāĻĻāĻžāĻšāϰāĻŖāϟāĻŋ āĻĻ⧇āĻ–āĻžāϝāĻŧ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āĻĄāĻžāϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āϞ⧇āφāωāϟ āĻĢāĻžāχāϞ⧇ āϏāϰāĻžāϏāϰāĻŋ āωāχāĻœā§‡āĻŸā§‡ āĻŸā§‡āĻ•ā§āϏāϟ āĻŦāϰāĻžāĻĻā§āĻĻ āĻ•āϰāĻž āϝāĻžāϝāĻŧāĨ¤ āĻāϟāĻŋ āωāĻĒāϰ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ āϜāĻžāĻ­āĻž āϕ⧋āĻĄā§‡āϰ āϝ⧇āϕ⧋āύāĻ“ āĻ•āϞ āĻ•āϰāĻžāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύāϕ⧇ āϏāϰāĻŋāϝāĻŧ⧇ āĻĻ⧇āϝāĻŧāĨ¤ āĻ…ā§āϝāĻžāϏāĻžāχāύāĻŽā§‡āĻ¨ā§āϟ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύ⧇ @{} āϏāĻŋāύāĻŸā§āϝāĻžāĻ•ā§āϏ⧇āϰ āĻŦā§āϝāĻŦāĻšāĻžāϰ āϞāĻ•ā§āĻˇā§āϝ āĻ•āϰ⧁āύ:

<TextView
    android:text="@{viewmodel.userName}" />

āϞ⧇āφāωāϟ āĻĢāĻžāχāϞ⧇ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋ āφāĻĒāύāĻžāϕ⧇ āφāĻĒāύāĻžāϰ āĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϞāĻžāĻĒ⧇ āĻ…āύ⧇āĻ•āϗ⧁āϞāĻŋ UI āĻĢā§āϰ⧇āĻŽāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻ•āϞ āĻŽā§āϛ⧇ āĻĢ⧇āϞāϤ⧇ āĻĻ⧇āϝāĻŧ, āϏ⧇āϗ⧁āϞāĻŋāϕ⧇ āϏāĻšāϜ āĻāĻŦāĻ‚ āĻŦāϜāĻžāϝāĻŧ āϰāĻžāĻ–āĻž āϏāĻšāϜ āĻ•āϰ⧇ āϤ⧋āϞ⧇āĨ¤ āĻāϟāĻŋ āφāĻĒāύāĻžāϰ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻ•āĻ°ā§āĻŽāĻ•ā§āώāĻŽāϤāĻžāĻ“ āωāĻ¨ā§āύāϤ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇ āĻāĻŦāĻ‚ āĻŽā§‡āĻŽāϰāĻŋ āϞāĻŋāĻ• āĻāĻŦāĻ‚ āύāĻžāϞ āĻĒāϝāĻŧ⧇āĻ¨ā§āϟāĻžāϰ āĻŦā§āϝāϤāĻŋāĻ•ā§āϰāĻŽ āĻĒā§āϰāϤāĻŋāϰ⧋āϧ⧇ āϏāĻšāĻžāϝāĻŧāϤāĻž āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž

āφāĻĒāύāĻžāϰ Android āĻ…ā§āϝāĻžāĻĒ⧇ āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇āύ āϤāĻž āĻļāĻŋāĻ–āϤ⧇ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻĒ⧃āĻˇā§āĻ āĻžāϗ⧁āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ⧎

āĻļ⧁āϰ⧁ āĻ•āϰ⧁āύ
āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ¸ā§āϟ⧁āĻĄāĻŋāĻ“āϤ⧇ āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϕ⧋āĻĄā§‡āϰ āϏāĻŽāĻ°ā§āĻĨāύ āϏāĻš āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋāϰ āϏāĻžāĻĨ⧇ āĻ•āĻžāϜ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āϕ⧀āĻ­āĻžāĻŦ⧇ āφāĻĒāύāĻžāϰ āĻŦāĻŋāĻ•āĻžāĻļ⧇āϰ āĻĒāϰāĻŋāĻŦ⧇āĻļ āϤ⧈āϰāĻŋ āĻ•āϰāĻŦ⧇āύ āϤāĻž āĻļāĻŋāϖ⧁āύāĨ¤

āϞ⧇āφāωāϟ āĻāĻŦāĻ‚ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύ

āĻ…āĻ­āĻŋāĻŦā§āϝāĻ•ā§āϤāĻŋ āĻ­āĻžāώāĻž āφāĻĒāύāĻžāϕ⧇ āĻ…āĻ­āĻŋāĻŦā§āϝāĻ•ā§āϤāĻŋ āϞāĻŋāĻ–āϤ⧇ āĻĻ⧇āϝāĻŧ āϝāĻž āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞāϗ⧁āϞāĻŋāϕ⧇ āĻŦāĻŋāĻ¨ā§āϝāĻžāϏ⧇āϰ āĻĻ⧃āĻļā§āϝāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āϏāĻ‚āϝ⧁āĻ•ā§āϤ āĻ•āϰ⧇āĨ¤ āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āφāĻĒāύāĻžāϰ āĻĄā§‡āϟāĻž āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āϞ⧇āφāωāĻŸā§‡ āĻ­āĻŋāω āφāĻŦāĻĻā§āϧ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āĻ•ā§āϞāĻžāϏ āϤ⧈āϰāĻŋ āĻ•āϰ⧇āĨ¤ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āφāĻŽāĻĻāĻžāύāĻŋ, āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞ⧇āϰ āĻŽāϤ⧋ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻāϟāĻŋ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰ⧇ āϝāĻž āφāĻĒāύāĻŋ āφāĻĒāύāĻžāϰ āϞ⧇āφāωāϟāϗ⧁āϞāĻŋāϤ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ⧎

āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋāϰ āĻāχ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋ āφāĻĒāύāĻžāϰ āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ āϞ⧇āφāωāϟāϗ⧁āϞāĻŋāϰ āϏāĻžāĻĨ⧇ āύāĻŋāĻ°ā§āĻŦāĻŋāĻ˜ā§āύ⧇ āϏāĻšāĻžāĻŦāĻ¸ā§āĻĨāĻžāύ āĻ•āϰ⧇⧎ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞ āϝ⧇āϗ⧁āϞāĻŋ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇ āϏ⧇āϗ⧁āϞāĻŋ āĻāĻ•āϟāĻŋ data āωāĻĒāĻžāĻĻāĻžāύ⧇āϰ āĻ­āĻŋāϤāϰ⧇ āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰāĻž āĻšāϝāĻŧ āϝāĻž UI āϞ⧇āφāωāĻŸā§‡āϰ āĻŽā§‚āϞ āωāĻĒāĻžāĻĻāĻžāύ⧇āϰ āĻāĻ•āϟāĻŋ āĻ­āĻžāχāĨ¤ āωāĻ­āϝāĻŧ āωāĻĒāĻžāĻĻāĻžāύ āĻāĻ•āϟāĻŋ layout āĻŸā§āϝāĻžāϗ⧇ āĻŽā§‹āĻĄāĻŧāĻžāύ⧋ āĻšāϝāĻŧ, āϝ⧇āĻŽāύāϟāĻŋ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āωāĻĻāĻžāĻšāϰāϪ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ⧇āϛ⧇:

<layout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto">
    <data>
        <variable
            name="viewmodel"
            type="com.myapp.data.ViewModel" />
    </data>
    <ConstraintLayout... /> <!-- UI layout's root element -->
</layout>

āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻŖāϝ⧋āĻ—ā§āϝ āĻĄā§‡āϟāĻž āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āĻ•āĻžāϜ āĻ•āϰ⧁āύ
āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ⧇āϰ āϜāĻ¨ā§āϝ āϏāĻšāĻœā§‡ āĻĄā§‡āϟāĻž āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻŖ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻ•ā§āϞāĻžāϏ āĻāĻŦāĻ‚ āĻĒāĻĻā§āϧāϤāĻŋ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤ āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻšāĻŋāϤ āĻĄā§‡āϟāĻž āĻ‰ā§ŽāϏ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻšāϞ⧇ UI āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻ•āϰāĻžāϰ āĻŦāĻŋāώāϝāĻŧ⧇ āφāĻĒāύāĻžāϕ⧇ āϚāĻŋāĻ¨ā§āϤāĻž āĻ•āϰāϤ⧇ āĻšāĻŦ⧇ āύāĻžāĨ¤ āφāĻĒāύāĻŋ āφāĻĒāύāĻžāϰ āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞ āĻŦāĻž āϤāĻžāĻĻ⧇āϰ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻŖāϝ⧋āĻ—ā§āϝ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āφāĻĒāύāĻžāϕ⧇ āĻŦāĻ¸ā§āϤ⧁, āĻ•ā§āώ⧇āĻ¤ā§āϰ āĻŦāĻž āϏāĻ‚āĻ—ā§āϰāĻšāϕ⧇ āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻŖāϝ⧋āĻ—ā§āϝ āĻ•āϰ⧇ āϤ⧁āϞāϤ⧇ āĻĻ⧇āϝāĻŧāĨ¤
āωāĻ¤ā§āĻĒāĻ¨ā§āύ āĻŦāĻžāρāϧāĻžāχ āĻ•ā§āϞāĻžāϏ
āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āĻ•ā§āϞāĻžāϏ āϤ⧈āϰāĻŋ āĻ•āϰ⧇ āϝāĻž āϞ⧇āφāωāĻŸā§‡āϰ āϭ⧇āϰāĻŋāϝāĻŧ⧇āĻŦāϞ āĻāĻŦāĻ‚ āĻ­āĻŋāω āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧāĨ¤ āĻāχ āĻĒ⧃āĻˇā§āĻ āĻžāϟāĻŋ āφāĻĒāύāĻžāϕ⧇ āĻĻ⧇āĻ–āĻžāϝāĻŧ āĻ•āĻŋāĻ­āĻžāĻŦ⧇ āĻœā§‡āύāĻžāϰ⧇āĻŸā§‡āĻĄ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āĻ•ā§āϞāĻžāϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻāĻŦāĻ‚ āĻ•āĻžāĻ¸ā§āϟāĻŽāĻžāχāϜ āĻ•āϰāϤ⧇ āĻšāϝāĻŧāĨ¤
āĻŦāĻžāρāϧāĻžāχ āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰ
āĻĒā§āϰāϤāĻŋāϟāĻŋ āϞ⧇āφāωāϟ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ, āĻāĻ•āϟāĻŋ āĻŦāĻžāρāϧāĻžāχ āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰ āϰāϝāĻŧ⧇āϛ⧇ āϝāĻž āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āĻŦāĻž āĻļā§āϰ⧋āϤāĻžāĻĻ⧇āϰ āϏ⧇āϟ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āĻĢā§āϰ⧇āĻŽāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻ•āϞ āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰ āĻŸā§‡āĻ•ā§āϏāϟ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āϏ⧇āϟ āĻ•āϰāϤ⧇ setText() āĻĒāĻĻā§āϧāϤāĻŋāϤ⧇ āĻ•āϞ āĻ•āϰāĻžāϰ āϝāĻ¤ā§āύ āύāĻŋāϤ⧇ āĻĒāĻžāϰ⧇ āĻŦāĻž āĻ•ā§āϞāĻŋāĻ• āχāϭ⧇āĻ¨ā§āĻŸā§‡ āĻāĻ•āϜāύ āĻļā§āϰ⧋āϤāĻž āϝ⧋āĻ— āĻ•āϰāϤ⧇ setOnClickListener() āĻĒāĻĻā§āϧāϤāĻŋāϤ⧇ āĻ•āϞ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āϏāĻŦāĻšā§‡āϝāĻŧ⧇ āϏāĻžāϧāĻžāϰāĻŖ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰ, āϝ⧇āĻŽāύ android:text āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ⧇āϰ āϜāĻ¨ā§āϝ āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰāϗ⧁āϞāĻŋ āĻāχ āĻĒ⧃āĻˇā§āĻ āĻžāϰ āωāĻĻāĻžāĻšāϰāĻŖāϗ⧁āϞāĻŋāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ, āφāĻĒāύāĻžāϰ āϜāĻ¨ā§āϝ android.databinding.adapters āĻĒā§āϝāĻžāϕ⧇āĻœā§‡ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ⧎ āϏāĻžāϧāĻžāϰāĻŖ āĻŦāĻžāρāϧāĻžāχ āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰ⧇āϰ āϤāĻžāϞāĻŋāĻ•āĻžāϰ āϜāĻ¨ā§āϝ, āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰāϗ⧁āϞāĻŋ āĻĻ⧇āϖ⧁āύāĨ¤ āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āφāĻĒāύāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻ…ā§āϝāĻžāĻĄāĻžāĻĒā§āϟāĻžāϰ āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ, āϝ⧇āĻŽāύāϟāĻŋ āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āωāĻĻāĻžāĻšāϰāϪ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ⧇āϛ⧇:

āϕ⧋āϟāϞāĻŋāύ

@BindingAdapter("app:goneUnless")
fun goneUnless(view: View, visible: Boolean) {
    view.visibility = if (visible) View.VISIBLE else View.GONE
}

āϜāĻžāĻ­āĻž

@BindingAdapter("app:goneUnless")
public static void goneUnless(View view, Boolean visible) {
    view.visibility = visible ? View.VISIBLE : View.GONE;
}

āφāĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āϚāĻžāϰ āωāĻĒāĻžāĻĻāĻžāύ⧇ āĻŦāĻŋāĻ¨ā§āϝāĻžāϏ āĻĻ⧃āĻļā§āϝ āφāĻŦāĻĻā§āϧ āĻ•āϰ⧁āύ
āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āϏāĻžāĻĒā§‹āĻ°ā§āϟ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋāϤ⧇ āφāĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āϚāĻžāϰ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϰāϝāĻŧ⧇āϛ⧇, āϝāĻž āφāĻĒāύāĻŋ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀, āĻĒāϰ⧀āĻ•ā§āώāĻžāϝ⧋āĻ—ā§āϝ āĻāĻŦāĻ‚ āϰāĻ•ā§āώāĻŖāĻžāĻŦ⧇āĻ•ā§āώāĻŖāϝ⧋āĻ—ā§āϝ āĻ…ā§āϝāĻžāĻĒ āĻĄāĻŋāϜāĻžāχāύ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āφāĻĒāύāĻŋ āφāĻĒāύāĻžāϰ UI āĻāϰ āĻŦāĻŋāĻ•āĻžāĻļāϕ⧇ āφāϰāĻ“ āϏāĻšāϜ āĻ•āϰāϤ⧇ āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋāϰ āϏāĻžāĻĨ⧇ āφāĻ°ā§āĻ•āĻŋāĻŸā§‡āĻ•āϚāĻžāϰ āωāĻĒāĻžāĻĻāĻžāύāϗ⧁āϞāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤
āĻĻā§āĻŦāĻŋ-āĻŽā§āĻ–ā§€ āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚
āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻĻā§āĻŦāĻŋāĻŽā§āĻ–ā§€ āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤ āĻāχ āϧāϰāϪ⧇āϰ āĻŦāĻžāρāϧāĻžāχāϝāĻŧ⧇āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻ¸ā§āĻŦāϰāϞāĻŋāĻĒāĻŋ āĻāĻ•āϟāĻŋ āϏāĻŽā§āĻĒāĻ¤ā§āϤāĻŋāϤ⧇ āĻĄā§‡āϟāĻž āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϗ⧁āϞāĻŋ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰāĻžāϰ āĻāĻŦāĻ‚ āĻāĻ•āχ āϏāĻŽāϝāĻŧ⧇ āϏ⧇āχ āϏāĻŽā§āĻĒāĻ¤ā§āϤāĻŋāϤ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āφāĻĒāĻĄā§‡āϟāϗ⧁āϞāĻŋ āĻļā§‹āύāĻžāϰ āĻ•ā§āώāĻŽāϤāĻž āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤

āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āϏāĻŽā§āĻĒāĻĻ

āĻĄā§‡āϟāĻž āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āφāϰāĻ“ āϜāĻžāύāϤ⧇, āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āϏāĻ‚āĻ¸ā§āĻĨāĻžāύāϗ⧁āϞāĻŋ āĻĻ⧇āϖ⧁āύ⧎

āύāĻŽā§āύāĻž

āϕ⧋āĻĄāĻ˛ā§āϝāĻžāĻŦ

āĻŦā§āϞāĻ— āĻĒā§‹āĻ¸ā§āϟ

{% āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ⧇ %} {% endverbatim %} {% āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨ⧇ %} {% endverbatim %}