android滑動介面

2021-07-09 19:42:21 字數 1930 閱讀 3096

滑動相關的方法

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...