滑動相關的方法
scrollto(int x,int y):x,y代表的不是座標點,而是偏移量。
scrollby(int x,int y):它實際上是呼叫了scrollto(mscrollx + x, mscrolly + y),即表示在原先偏移的基礎上在發生偏移
scroller.getcurrx() //獲取mscroller當前水平滾動的位置
scroller.getcurry() //獲取mscroller當前豎直滾動的位置
scroller.getfinalx() //獲取mscroller最終停止的水平位置
scroller.getfinaly() //獲取mscroller最終停止的豎直位置
scroller.setfinalx(int newx) //設定mscroller最終停留的水平位置,沒有動畫效果,直接跳到目標位置
scroller.setfinaly(int newy) //設定mscroller最終停留的豎直位置,沒有動畫效果,直接跳到目標位置
滑動動畫相關的方法
//滾動,startx, starty為開始滾動的位置,dx,dy為滾動的偏移量, duration為完成滾動的時間
scroller.startscroll(int startx, int starty, int dx, int dy) //使用預設完成時間250ms
scroller.startscroll(int startx, int starty, int dx, int dy, int duration)
/*要實現滑動效果必須要過載computescroll方法*/
@override
public void computescroll()
}
/** 滑動的核心方法,在此處理滑動相關的操作 */
關鍵**:
public class screenlayout extends relativelayout
public screenlayout(context context, attributeset attrs)
/** 初始化元件和介面 */
private void initview()
/** 對scroller的startscroll方法進行封裝, 從starty開始,滑動距離dy 持續時間duration */
public void startscroll(int starty, int dy, int duration)
/** 滑動的核心方法,在此處理滑動相關的操作 */
@override
public boolean ontouchevent(motionevent event)
} else
}break;
case motionevent.action_up:
currenty = (int) event.gety();
distancey = currenty - downy;
if (!istop) else
} else else
}break;
} return super.ontouchevent(event);
} @override
public void computescroll() else
} }}
android關於實現滑動介面
首先要說的是,滑動介面,我們需要乙個以上的view切換,實際上可以使用arraylistpageviews要儲存view資訊,然後切換 layoutinflater inflater getlayoutinflater pageviews new arraylist pageviews.add in...
Android彈性滑動
1 view使用scroller滑動 在scroller.startscroll 方法中,會將scrollx和deltax相加存入mfinalx中 invalidate 方法會呼叫draw 方法,draw 會呼叫computescroll 方法,而在view 中computescroll 方法是空實...
android 滑動監聽
1,讓 activity實現 ontouchlistener介面 2.privategesturedetector gesturedetector 在activity中實現以下監聽 gesturedetector newgesturedetector 你的activity,ongesturelist...