Android Data Binding 사용 노트
1. 자바 의 언어 동적 속성 이 매우 제한 되 어 있 기 때문에 이 바 인 딩 의 실현 은 코드 생 성 기술 에 의존 하 는 것 으로 기술적 인 측면 에서 좋 지 않다.홈 페이지 문서 의 오 류 는 정적 언어 특성 과 관련 이 있 습 니 다. 예 를 들 어 Bind 설정 변 수 는 공식 지침 이 아 닌 setVariable 함수 입 니 다.용법 은 다음 과 같다.
viewDataBinding.setVariable(BR.variable_name,varaible);
2. 예 를 들 어 렌 더 링 List 는 data 속성 정의 에 '문자' 가 존재 하지 않 기 때문에 두 기 호 를 HTML 전의 문자열 < 와 > 로 바 꿔 야 합 니 다. 그리고 안의 유형 은 자바 내 건축 유형 을 제외 하고 다른 것 은 클래스 전체 이름 으로 쓰 는 것 이 좋 습 니 다. 그렇지 않 으 면 찾 을 수 없습니다.
3. ImageView 를 렌 더 링 하려 면 BindingAdapter 특성 을 활용 하여 먼저 BindingAdapter 를 실현 해 야 합 니 다.
4. 567913. 그리고 url 을 직접 렌 더 링 할 수 있 습 니 다.
@BindingAdapter({"imageUrl"})
public static void loadImage(ImageView view, String url){
if (url==null || "".equals(url)){
view.setImageDrawable(view.getContext().getResources().getDrawable(R.drawable.place_image));
}else{
Glide.with(view.getContext()).load(url).into(view);
}
}
4. onCreate 로 딩 문제: Activity onCreate 에서 네트워크 대상 을 불 러 오고 레이아웃 에 이 대상 에 의존 하 는 bool 변수 가 있 으 면 null 대상 호출 오류 가 발생 할 수 있 습 니 다. 네트워크 로 딩 시 비동기 적 인 것 으로 추정 되 기 때문에 보기 가 렌 더 링 되 지 않 았 을 때 해결 방법 은 네트워크 대상 을 불 러 오기 전에 자리 잡 는 대상 을 전송 할 수 있 습 니 다. 그 안에 필요 한 것 을 전달 할 수 있 습 니 다.불 변수 할당
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.