애니메이션이 함수 호출 후 종료 할 때 내가 연락 싶습니다안드로이드 viewpager 애니메이션
는viewPager.setCurrentItem(2, true);
사람이 작업을 수행하는 방법을 알고 있나요? 당신은 OnPageChangeListener을 사용할 수 있습니다
애니메이션이 함수 호출 후 종료 할 때 내가 연락 싶습니다안드로이드 viewpager 애니메이션
는viewPager.setCurrentItem(2, true);
사람이 작업을 수행하는 방법을 알고 있나요? 당신은 OnPageChangeListener을 사용할 수 있습니다
은 ..
새 페이지를 선택viewPager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
// The code you want to run when scrolling is complete
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {}
@Override
public void onPageScrollStateChanged(int arg0) {}
});
, onPageSelected()가 호출됩니다.
동일한 문제가 발생했습니다. 내 결론은 다음과 같습니다.
페이지가 실제로 변경되면 onPageSelected가 호출됩니다. 하지만 애니메이션 전에 호출되었습니다.
애니메이션이 중단되면 onPageScrollStateChanged가 상태 SCROLL_STATE_IDLE과 함께 호출됩니다.
그래서이 두 함수 호출을 결합하여 함수를 호출해야합니다.
행운을 비네.
private class PageChangeListener implements OnPageChangeListener {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
isPageChanged = true;
}
@Override
public void onPageScrollStateChanged(int state) {
switch (state) {
case ViewPager.SCROLL_STATE_IDLE:
if (isPageChanged) {
updateCurrentPage();//this will be called when animation ends
isPageChanged = false;
}
break;
case ViewPager.SCROLL_STATE_DRAGGING:
break;
case ViewPager.SCROLL_STATE_SETTLING:
break;
}
}
}
onPageSelected() docs -이 메서드는 새 페이지가 선택 될 때 호출됩니다. ** 애니메이션이 반드시 완전하지는 않습니다 **. http://developer.android.com/reference/android/support/v4/view/ViewPager.OnPageChangeListener.html#onPageSelected(int) – djdmbrwsk