程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> android-有關安卓自定義viewpager的問題

android-有關安卓自定義viewpager的問題

編輯:編程解疑
有關安卓自定義viewpager的問題

有沒有人能給解釋一下這段自定義的viewpager能實現什麼效果麼
package com.sunking.water.utils.view;

import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;

public class MyViewPager extends ViewPager {

private boolean noScroll = true;  

public MyViewPager(Context context, AttributeSet attrs) {  
    super(context, attrs);  
    // TODO Auto-generated constructor stub  
}  

public MyViewPager(Context context) {  
    super(context);  
}  

public void setNoScroll(boolean noScroll) {  
    this.noScroll = noScroll;  
}  

@Override  
public void scrollTo(int x, int y) {  
    super.scrollTo(x, y);  
}  

@Override  
public boolean onTouchEvent(MotionEvent arg0) {  
    /* return false;//super.onTouchEvent(arg0); */  
    if (noScroll)  
        return false;  
    else  
        return super.onTouchEvent(arg0);  
}  

@Override  
public boolean onInterceptTouchEvent(MotionEvent arg0) {  
    if (noScroll)  
        return false;  
    else  
        return super.onInterceptTouchEvent(arg0);  
}  

@Override  
public void setCurrentItem(int item, boolean smoothScroll) {  
    super.setCurrentItem(item, smoothScroll);  
}  

@Override  
public void setCurrentItem(int item) {  
    super.setCurrentItem(item);  
}   

}

最佳回答:


它無非就是對onInterceptTouchEvent和onTouchEvent增加了 一個條件判斷,就是noScroll=true時,直接return,而不再執行父類的操作,return false表示未執行完,交給後面,如果是return true,就什麼都不干了

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved