您好,登錄后才能下訂單哦!
小編給大家分享一下Android如何實現滑動方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Android 實現滑動方法總結
本文對Android 滑動提供了七種方法,對于每一種實現方法都進行了詳細介紹,按照需要大家可以參考下,
1.1 用Layout方法
我們知道,當view在繪制時會調用onlayout方法來設置顯示位置。同樣也可以通過view的left、top, right,buttom 四個屬性來控制view的坐標。每次在ontouchevent的時候,我們都要獲取一下觸摸點的坐標。
@Override public boolean onTouchEvent(MotionEvent event) { int x = (int) event.getX(); int y = (int) event.getY(); switch (event.getAction()) { case MotionEvent.ACTION_DOWN: lastX = x; lastY = y; break; case MotionEvent.ACTION_MOVE: int offsetx = (int) (x - lastX); int offsety = (int) (y - lastY); layout(getLeft() + offsetx, getTop() + offsety, getRight() + offsetx, getBottom() + offsety);
//重新獲取偏移量,在獲取絕對坐標的時候需要非常注意,因為如果這里不注意的話容易獲取錯誤的坐標 lastX = x; lastY = y; break; } return true; }
1.2 使用offsetLeftAndRight(),offsetTopAndBottom()
這個只要知道偏移量就可以使用此方法來進行寵幸繪畫。相當于對左右偏移和上下偏移做了一個封裝。
1.3 使用layoutparms來實現view的移動
這個要注意的是必須使用父布局類型的layoutpamrs,不然這里將會出錯;當然有更簡便的方法,如果使用viewgroup.marginlayoutParams就不需要考慮父控件您的類型了。
1.4 使用scrollyTo和scrollBy來實現
在view 中,系統提供了scrollyTo和scrollyBy兩個方法來改變view的位置。這兩個方法非常好理解,scrollyto是移動到一個指定的位置,scrollyBy是移動的是view的一個偏移量,他實際上也調用了scrollyTo方法。他們只能改變view的內容布局,而不能改變view本身的位置,并沒有實現真正意義上的滑動,他改變的是內容的位置。如果在viewgroup中使用它移動的是所有的子view,而在view中使用,他移動的是view的內容。還有就是他們的移動都是瞬間完成的,在事件觸發時就已經完成了。
1.5 使用scroller
通過scrooler我們可以平滑的移動view,
1.6屬性動畫
1.7 viewdraghelper
通過viewdragHelper我們基本可以實現各種動畫操作。但是他的使用方法比較復雜:
Android是一種基于Linux內核的自由及開放源代碼的操作系統,主要使用于移動設備,如智能手機和平板電腦,由美國Google公司和開放手機聯盟領導及開發。
以上是“Android如何實現滑動方法”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。