1. 程式人生 > >android scroller類中 startScroll()方法滑動快而產生的卡住現象

android scroller類中 startScroll()方法滑動快而產生的卡住現象

      最近在做專案中發現,startScroll()方法中的最後一個引數---時間間隔設定,如果時間間隔設定太長,而你的手在螢幕上滑動間隔過快的話,就會產生滑動引數跟不上設定的滑動值,通過logcat列印可以發現,當時間設定過長,還沒回到自己設定的滑動間隔距離72,使用者就執行第二次滑動,這樣可以發現滑動的引數就慢慢減少,我將時間間隔減小到400毫秒,這樣滑動快點也不會出現卡住現象了。

我的專案中向左滑動的方法:

 public void LeftScroll() {
    if(mScroller.getCurrX() <= 72 ) {
            mScroller.startScroll(mScroller.getCurrX(), 0, 72, 0, 400);
            //set color
            if(mScroller.getCurrX() == -72) {
            video1 = (TextView)this.findViewById(R.id.video_d);
            video1.setTextColor(Color.rgb(0xff, 0xff, 0xff));
            photo1 = (TextView)this.findViewById(R.id.photo_d);
                photo1.setTextColor(Color.rgb(0xff, 0xcc, 0));
                
                mActivity.setModuleFromIndex(ModuleSwitcher.PHOTO_MODULE_INDEX);
            }