setOnPageChangeListener 용 핸들러를 Android Binding 기능이있는 XML 파일의 ViewPager에 바인딩 할 수 있습니까?ViewPager 용 안드로이드 이벤트 리스너 데이터 바인딩
데모는 onClick 이벤트를 보여 줍니 다만 얼마나 많은 이벤트 기능을 구현할 수 있는지 궁금합니다. 데이터 바인딩 기능에 대한 링크도 훌륭합니다. 감사.
가설 예 :
example_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable name="handlers" type="com.example.Handlers"/>
</data>
<android.support.v4.view.ViewPager
android:id="@+id/pager"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:onPageChangeListener="@{handlers.pageChanged}" />
</layout>
Handler.java가
package com.example.viewmodels;
import android.view.View;
public class Handlers {
public void pageChanged(View view){}
}
컴파일 오류이다
오류 (6 2) 'android'패키지의 'onPageChangeListener'속성에 대한 자원 식별자가 없습니다.
좋지 않은 솔루션입니다. ViewPager는 내부 ArrayList에 OnPageChangeListener를 추가하기 때문에이 속성에 대한 notifyChange()를 호출하면 여러 리스너가 추가됩니다. – b1n0m
@ b1n0m 리스너를 추가하기 전에 리스너를 먼저 제거하도록 업데이트되었습니다. –