在网上找了个例子,是用线程,定时执行,切换滚动的广告图片。
但是有时候可能用户会手动滑动来切换,网上这个demo由于是固定了线程延迟执行时间,所以有时候可能用户刚手动滚动中,或刚滚动完,线程的执行时间到了,又会马上切下一张图片,导致出现连续滚2图的情况。
作为一个安卓新手,我想问,viewpage是否有touch之类的事件监听,如果监听到是人为touch了这个view,就重置线程。
人生最曼妙的风景,竟是内心的淡定与从容!
SimpleOnPageChangeListener()을 사용하여 ViewPager 이벤트를 수신합니다. onPageScrollStateChanged() 메소드는 전달된 매개변수에 따라 사용자가 슬라이드하는지 여부를 결정합니다. 코드는 대략 다음과 같습니다
SimpleOnPageChangeListener()
onPageScrollStateChanged()
onTouchEvent 이벤트를 다시 작성하고 판단합니다. ACTION_DOWN이렇게handler.removeCallbacks(marqueeRunnable);수동으로 자동 스크롤을 중지하고 ACTION_UP이렇게handler.postDelayed(marqueeRunnable, scrollDelayTime);수동으로 자동 스크롤을 시작합니다.
onTouchEvent
ACTION_DOWN
handler.removeCallbacks(marqueeRunnable);
ACTION_UP
handler.postDelayed(marqueeRunnable, scrollDelayTime);
으아아아
으아아아SimpleOnPageChangeListener()
을 사용하여 ViewPager 이벤트를 수신합니다.onPageScrollStateChanged()
메소드는 전달된 매개변수에 따라 사용자가 슬라이드하는지 여부를 결정합니다. 코드는 대략 다음과 같습니다onTouchEvent
이벤트를 다시 작성하고 판단합니다.ACTION_DOWN
이렇게handler.removeCallbacks(marqueeRunnable);
수동으로 자동 스크롤을 중지하고ACTION_UP
이렇게handler.postDelayed(marqueeRunnable, scrollDelayTime);
수동으로 자동 스크롤을 시작합니다.으아아아