Android/ArchitectureComponent
-
[AAC] DataBinding -3 <variable>에 뷰모델 변수Android/ArchitectureComponent 2021. 9. 14. 16:42
이전 포스팅 2021.09.11 - [Android/DataBinding] - [Android] DataBinding 2 - generated binding class 데이터 바인딩과 ViewModel, LiveData를 같이 활용해야 하는데 데이터 바인딩과 ViewModel 둘을 활용하다가 막힌 점에 대해서 바인딩 레이아웃 MyViewModel타입 myViewModel변수 layout expression으로 viewModel의 testString값을 텍스트 속성으로 설정 MainActivity MyViewModel 이 상태에서 TextView가 다른 적절한 String으로 업데이트 되어야 할때 다음과 같이 하면 변경이 될까? myViewModel.testString="변경이 될까" onCreate, o..
-
[AAC] DataBinding 2 - generated binding classAndroid/ArchitectureComponent 2021. 9. 11. 14:10
2021.09.09 - [Android/DataBinding] - [Android] DataBinding 1- 데이터바인딩 기본 사용법 ViewDataBinding 데이터 바인딩 클래스들( 태그를 사용한 layout들의 각각에 해당하는 바인딩 클래스들) 의 Base class. DataBindingUtil 레이아웃으로부터 ViewDataBinding클래스 인스턴스를 생성하기 위한 유틸리티 클래스 클래스 메서드로 데이터 바인딩과 관련된 기능을 수행한다. (inflate, bind, setContentView) 우리가 사용하는 바인딩 클래스 ViewDataBinding의 자손으로 구현되며, 내부에 변수가 포함되어있다. activity_main.xml -> ActivityMainBinding extends V..
-
[AAC] DataBinding 1- 데이터바인딩 기본 사용법Android/ArchitectureComponent 2021. 9. 9. 18:45
Activity에 연결된 layout 파일의 View를 참조하기 위해서 findViewById를 사용하였다. findViewById는 동일한 이름의 ui component id가 존재할 때 다른 view의 id가 들어갈 여지가 있고 id를 찾는데 시간이 오래걸린다. 가독성 또한 좋지않다. ViewBinding은 layout파일과 관련된 바인딩 오브젝트를 생성하여 바인딩 오브젝트를 통하여 id에 해당하는 뷰를 참조할 수 있었다. DataBinding은 ViewBinding의 확장 개념으로 ViewBinding의 기능을 포함해 layout파일에서 변수처럼 사용할 수 있는 변수를 포함시켜 바인딩 오브젝트에 데이터를 멤버로 포함시킬 수 있다. 바인딩 오브젝트에 포함된 변수를 이용하여 layout부분에서 ui의 ..