일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- F
- 옵저버 패턴
- El
- ㅋㅁ
- 추상팩토리패턴
- 프로토타입 패턴
- 빌터패턴
- Design Pattern
- builderPattern
- Abstract Factory
- 코틀린
- ㅓ
- 디자인패턴
- Kotlin
- Observer Pattern
- a
- r
- 함수형프로그래밍
- factory method
- PrototypePattern
- Functional Programming
- 싱글톤
- 팩토리 메소드
- 디자인패턴 #
- designPattern
- 추상 팩토리
- Singleton
- Today
- Total
목록Android Jetpack Architecture/DataBinding (9)
오늘도 더 나은 코드를 작성하였습니까?
Include - 속성의 이름을 통하여 바인딩 변수를 include 되는 xml 로전달한다 - include.xml 에서 바인딩 변수명을 속성명과 동일하게 하여 받을 수 있다. - 각 분할된 레이아웃 파일에 대해 바인딩되는 viewModel은 최상위에 바인딩된 뷰모델안에 참조를 둔다. viewStub - include와 동일한 형태로 바인딩변수를 넘겨줄수 있다. - 바인딩 어텝터를 따로 정의 하지 않으면 바인딩이 어렵다. - ViewStub도 View를 상속하기 때문에 View를 파라미터로 받는 바인딩 어뎁터를 사용할수 있다. - 하지만 ViewStub만의 로직을 필요로하다면 인 ViewStub을 파라미터로 받는 바인딩 어뎁터를 만들어준다. - 반드시 id를 지정해야 XXXBindingClass를 포함한..
two-way DataBinding 일반적인 데이터 바인딩은 ViewModel에서 Observable 한 데이터의 변화에 있어 그것을 UI에 바로 적용하는 방식이지만 반대로 UI의 변화를 ViewModel의 데이터에 주입하는것. 속성 = " @={ }" 간단한 예제. public class MainActivity extends AppCompatActivity { ActivityMainBinding mBinding; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mBinding = DataBindingUtil.setContentView(this, R.layout.activity..
Observable은 객체가 데이터 변경에 관해 다른 객체에 알릴 수 있는 기능을 의미합니다. 데이터 결합 라이브러리를 통해 객체, 필드 또는 컬렉션을 식별 가능하게 만들 수 있습니다. 간단한 기존 객체를 데이터 결합에 사용할 수는 있지만 객체를 수정해도 UI가 자동으로 업데이트되지는 않습니다. 데이터 결합을 사용하면 데이터 변경 시 리스너라는 다른 객체에 알리는 기능을 데이터 객체에 제공할 수 있습니다. 식별 가능한 클래스에는 세 가지 유형, 즉 객체, 필드 및 컬렉션이 있습니다. 식별 가능한 데이터 객체 중 하나가 UI에 결합되고 데이터 객체의 속성이 변경되면 UI가 자동으로 업데이트됩니다. Observable 필드 사용 데이터 바인딩 라이브러리에서는 이미 Observable인터페이스를 구현한 몇몇 ..
DataBinding Component란? DataBindingComponent는 BindingAdapter에 대한 getter를 포함하는 인터페이스다. DataBindingComponent를 구현하는 클래스는 반드시 하나이상의 메서드를 가져야 한다. 메서드의 이름은 접두어 get과 @BindingAdapter 메서드를 포함하는 클래스 또는 인터페이스의 이름의 합성어여야 한다. 예를 들어 @BindingAdapter 메서드를 가지고 있는 클래스의 이름이 ClickBinding이라면 DataBindingComponent구현체가 갖는 메서드의 이름은 getClickBinding()이 된다 BindingAdapter를 통해 사용자 정의 따른 로직과 setter를 수행할 수 있다 하지만 @BindingAdapt..