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);
}