private Subscription subscribePager;private boolean isDrag ;
@Override public void onPause() { super.onPause(); stopAutoBanner(); } @Override public void onResume() { super.onResume(); startAutoBanner(); }
public void startAutoBanner() { if (mViewPager.getChildCount() < 2 || mViewPager == null) { return; } stopAutoBanner(); subscribePager = Observable.interval(Constants.TIME_DELAY_VIEWPAGER, TimeUnit.MILLISECONDS) .compose(AbstractModel.<Long>applyAsySchedulers()) .subscribe(new Action1<Long>() { @Override public void call(Long aLong) { if (!isDrag) { int index = mViewPager.getCurrentItem() + 1; mViewPager.setCurrentItem(index); Toast.makeText(getActivity(), "aLong=" + aLong, Toast.LENGTH_SHORT).show(); } } }); } public void stopAutoBanner() { if (subscribePager != null && !subscribePager.isUnsubscribed()) { subscribePager.unsubscribe(); } }