现在的位置: 首页 > 综合 > 正文

lwuit—调整滚动条灵敏度值

2012年07月18日 ⁄ 综合 ⁄ 共 1219字 ⁄ 字号 评论关闭
Component类中:
        //设置滚动条灵敏度
        public void pointerReleased(int x, int y) {
        
if (dragActivated) {
            
long currentTime = System.currentTimeMillis();

            // replace x and y if this is an x scrolling container
            if (!isScrollableY()) {
                y 
= x;
            }

            if (currentTime != lastTime[(pLastDragged + lastTime.length + 1% lastTime.length]) {
                lastTime[pLastDragged] 
= System.currentTimeMillis();
                lastDragged[pLastDragged] 
= y;
                pLastDragged 
= (++pLastDragged) % lastTime.length;
            }
            
float velocity = (float) (lastDragged[pLastDragged] - lastDragged[(pLastDragged + lastDragged.length + 1% lastDragged.length]) / (lastTime[pLastDragged] - lastTime[(pLastDragged + lastTime.length + 1% lastTime.length]);
            velocity 
= velocity * -1;

       //默认为0.0004f ,越小灵敏度越高
            if (isScrollableY()) {
                draggedMotion 
= Motion.createFrictionMotion(scrollY, velocity, 0.0008f);
            } 
else {
                draggedMotion 
= Motion.createFrictionMotion(scrollX, velocity, 0.0008f);
            }

            draggedMotion.start();
            dragActivated = false;
        }
    }

抱歉!评论已关闭.