真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android項(xiàng)目中實(shí)現(xiàn)滑動(dòng)功能的方法有哪些-創(chuàng)新互聯(lián)

本篇文章給大家分享的是有關(guān)Android項(xiàng)目中實(shí)現(xiàn)滑動(dòng)功能的方法有哪些,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

在鐘祥等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作定制開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營銷型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè)公司,鐘祥網(wǎng)站建設(shè)費(fèi)用合理。

一、Android坐標(biāo)體系

在講解滑動(dòng)之前,我們有必要簡單提一下Android的坐標(biāo)體系,因?yàn)榛瑒?dòng)的實(shí)質(zhì)就是坐標(biāo)的不斷改變,所以我們先來了解一下Android坐標(biāo)系和視圖坐標(biāo)系兩個(gè)概念。直接放上兩張圖片吧,一目了然。

Android項(xiàng)目中實(shí)現(xiàn)滑動(dòng)功能的方法有哪些

Android坐標(biāo)系

Android項(xiàng)目中實(shí)現(xiàn)滑動(dòng)功能的方法有哪些

視圖坐標(biāo)系

從上面的兩張圖可以看出,Android坐標(biāo)系的坐標(biāo)原點(diǎn)位于屏幕的左上角,而視圖坐標(biāo)系的原點(diǎn)位于父視圖的左上角,既然提供了兩種不同的坐標(biāo)系,那么我們?nèi)绾蝸慝@取坐標(biāo)呢,Android已經(jīng)給我們提供了一些方法用于獲取這些坐標(biāo),看下面的圖便一目了然。

Android項(xiàng)目中實(shí)現(xiàn)滑動(dòng)功能的方法有哪些

Android獲取坐標(biāo)的各種方法

二、layout方法

在View進(jìn)行繪制時(shí),是調(diào)用onLayout()方法來確定View的位置的,同樣我們也可以調(diào)用layout()方法來傳入我們滑動(dòng)后的坐標(biāo)便可以實(shí)現(xiàn)View的滑動(dòng),當(dāng)然坐標(biāo)的獲取我們可以在觸控事件中進(jìn)行獲取,下面我們做一個(gè)View隨手指進(jìn)行滑動(dòng)的小例子來進(jìn)行說明。

public class DragView extends View {
  private int mLastX;
  private int mLastY;
  public DragView(Context context) {
    this(context, null);
  }

  public DragView(Context context, AttributeSet attrs) {
    this(context, attrs, 0);
  }

  public DragView(Context context, AttributeSet attrs, int defStyleAttr) {
    super(context, attrs, defStyleAttr);
  }

  @Override
  public boolean onTouchEvent(MotionEvent event) {
    int x = (int) event.getX();
    int y = (int) event.getY();
    int lastX = 0, lastY = 0;
    switch (event.getAction()){
      case MotionEvent.ACTION_DOWN:
        mLastX = x;
        mLastY = y;
        break;
      case MotionEvent.ACTION_MOVE:
        int offsetX = x - mLastX;
        int offsetY = y - mLastY;
        layout(getLeft() + offsetX, getTop() + offsetY,
            getRight() + offsetX, getBottom() + offsetY);
        break;
    }
    return true;
  }
}

分享標(biāo)題:Android項(xiàng)目中實(shí)現(xiàn)滑動(dòng)功能的方法有哪些-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://weahome.cn/article/dhophi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部