Data Binding?
μ½λμμ μμ±νλ κ²μ΄ μλλΌ, μ μΈμ νμμΌλ‘ λ μ΄μμμ UI ꡬμ±μμλ₯Ό μ±μ λ°μ΄ν° μμ€μ κ²°ν©ν μ μλ μ§μ λΌμ΄λΈλ¬λ¦¬μ λλ€. λ³΄ν΅ μ½λμμ λ€μκ³Ό κ°μ΄ findViewById()λ₯Ό νΈμΆνμ¬ μμ ―μ μ°Ύκ³ , λ°μ΄ν° μμ€λ₯Ό μμ ―μ μμ±μ κ²°ν©μν€λ λ°©μμΌλ‘ μ§νν©λλ€.
λ§μ½ λ°μ΄ν° λ°μΈλ© λΌμ΄λΈλ¬λ¦¬λ₯Ό μ¬μ©νλ©΄ μ΄λ° λ°©μμΌλ‘ ν΄κ²°ν μ μμ΅λλ€.
λ μ΄μμ νμΌμμ ꡬμ±μμλ₯Ό λ°μ΄ν°μμ€μ κ²°ν©νλ©΄ μ‘ν°λΉν°μμ λ§μ UI νλ μμν¬ νΈμΆμ μμ ν μ μμ΄ λμ± λ¨μνλκ³ μμ‘΄μ±μ΄ λ¨μ΄μ Έ μ μ§κ΄λ¦¬ λν μ¬μμ§λλ€. κ·Έλ¦¬κ³ μ± μ±λ₯μ΄ ν₯μλλ©° λ©λͺ¨λ¦¬ λμ λ° null ν¬μΈν° μμΈλ₯Ό λ°©μ§ν μ μμ΅λλ€.
λ°μ΄ν° κ²°ν© λΌμ΄λΈλ¬λ¦¬ μ¬μ©
λ°μ΄ν° κ²°ν© λΌμ΄λΈλ¬λ¦¬λ₯Ό μ¬μ©νκΈ° μν΄μλ app μμ€μ gradleμ μλ μμ μ²λΌ μμ±μ ν΄μΌν©λλ€.
λ°μ΄ν° κ²°ν© λΌμ΄λΈλ¬λ¦¬λ λ μ΄μμμ λ·°λ₯Ό λ°μ΄ν° μμ€μ κ²°ν©νλ λ° νμν ν΄λμ€λ₯Ό μλμΌλ‘ μμ±ν©λλ€.
ActivityMainBindingκ³Ό κ°μ΄ μμ μ΄ μ μΈν μ‘ν°λΉν°μ μ΄λ¦μ λ°λΌ ν΄λμ€κ° μλμΌλ‘ μμ±λ©λλ€. ν΄λΉ ν΄λμ€λ₯Ό μ΄μ©νλ©΄ μ‘ν°λΉν°μ xml νμΌ κ°μ λ°μΈλ©μ΄ κ°λ₯ν©λλ€.
λΌμ΄λΈλ¬λ¦¬λ κΈ°μ‘΄ λ μ΄μμκ³Ό μννκ² κ³΅μ‘΄ν μ μλλ‘ ν©λλ€. μλ₯Ό λ€μ΄ ννμμμ μ¬μ©ν μ μλ κ²°ν©μ μν λ³μλ UI λ μ΄μμ λ£¨νΈ μμμ λμΌν μμΉμ μμμΈ data μμμμ μ μλ©λλ€.
xml μμμ κ²°ν©μ μν λ³μλ₯Ό λ°μΈλ© ν΄μ€ ν, λ€μκ³Ό κ°μ΄ UI ꡬμ±μμμ λ°μ΄ν°μμ€λ₯Ό κ²°ν©μν¬ μ μμ΅λλ€.
λ¨μν λ°μ΄ν°μμ€ λΏλ§ μλλΌ, μ΄λ²€νΈ κ΄λ ¨ λ©μλλ μ μΈμ νμμΌλ‘ κ²°ν©μμΌμ€ μ μμ΅λλ€.
Reference
https://developer.android.com/topic/libraries/data-binding