欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android右滑返回上一個界面的實現(xiàn)方法

 更新時間:2017年10月24日 10:23:17   作者:apple_xiangsiyu  
這篇文章主要介紹了Android右滑返回上一個界面的實現(xiàn)方法的相關(guān)資料,希望通過本文能幫助到大家,讓大家實現(xiàn)這樣的功能,需要的朋友可以參考下

Android右滑返回上一個界面的實現(xiàn)方法

public class BaseActivity extends Activity implements OnTouchListener { 
 
  public ProgressDialog progressDialog; 
  public String states; 
  public RequestQueue mQueue; 
 
  /** 觸摸時按下的點 **/ 
  PointF downP = new PointF(); 
  /** 觸摸時當前的點 **/ 
  PointF curP = new PointF(); 
 
  @Override 
  protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
 
 
  } 
 
  @Override 
  protected void onResume() { 
    super.onResume(); 
  } 
 
   
  @Override 
  public boolean onTouchEvent(MotionEvent event) { 
 
 
     
    curP.x = event.getX(); 
    switch (event.getAction()) { 
     
     
    case MotionEvent.ACTION_DOWN: 
 
      downP.x = event.getX(); 
     
      break; 
    case MotionEvent.ACTION_MOVE: 
 
 
      if (curP.x- downP.x > 500) { 
        Log.i("TEST", "move-=-=-=--=-"); 
        finish(); 
       
      } 
 
      break; 
    case MotionEvent.ACTION_UP: 
 
      break; 
 
    default: 
      break; 
    } 
     
    return true; 
  } 
 
  @Override 
  protected void onPause() { 
    super.onPause(); 
  } 
 
  @Override 
  protected void onDestroy() { 
    super.onDestroy(); 
 
  } 
 
   
 
} 

如上所示,既然要滑動返回上一個界面,我給出的方法是重寫onTouchEvent事件,所以我們實現(xiàn)了OnTouchListener 這個接口,

接下來的事情就是,我們要做些什么事呢,沒錯,就是滑動判斷,至于事件 switch 里面的 各個情況對應(yīng)的是我們對屏幕做了什么樣的操作就不解釋了,(可以自行百度)如上所示,如果滑動距離超過500像素,就結(jié)束當前activity,其實寫到這里基本上就沒了,但是我怎么可能寫這么低端的博客,你們說是不是,好的,重點來了,

博主帥哥,我現(xiàn)在就是用的你這個方法,但是為毛 scrollview 下的布局,對這個接口無效呢,好的,問的漂亮,我的回答是:我tm哪知道,....

OK,我們看下scrollview 源碼:

他喵的,果然重寫了這個方法, 根據(jù) view 觸碰事件的傳遞順序,scrollview會先攔截到事件,所以,我們要做的就是,在不對scrollview本來的攔截事件做改變的情況下,加入我們所需要的需求來滿足我們實現(xiàn)功能, 那么就很簡答了, 當然是 自己 定義一個view,代碼如下:

public class BackScrollView extends ScrollView { 
 
  /** 觸摸時按下的點 **/ 
  PointF downP = new PointF(); 
  /** 觸摸時當前的點 **/ 
  PointF curP = new PointF(); 
 
  public BackScrollView(Context context) { 
    super(context); 
  } 
 
  public BackScrollView(Context context, AttributeSet attrs, int defStyle) { 
    super(context, attrs, defStyle); 
  } 
 
  public BackScrollView(Context context, AttributeSet attrs) { 
    super(context, attrs); 
  } 
 
  @Override 
  public boolean onTouchEvent(MotionEvent event) { 
 
    curP.x = event.getX(); 
    switch (event.getAction()) { 
 
    case MotionEvent.ACTION_DOWN: 
 
      downP.x = event.getX(); 
      Log.i("TEST", "downP.x-=-=-=--=-" + downP.x); 
      break; 
    case MotionEvent.ACTION_MOVE: 
      Log.i("TEST", "downP.x-=-=-=--=-" + curP.x); 
 
      if (downP.x < 200) { 
 
        if (curP.x - downP.x > 500) { 
 
          return false; 
 
        } 
      } 
 
      break; 
    case MotionEvent.ACTION_UP: 
 
      break; 
 
    default: 
      break; 
    } 
    return super.onTouchEvent(event); 
  } 

OK,在如上代碼中,可以看到我們做了一個判斷,當觸摸點像素距離屏幕最左邊200像素以內(nèi)時,滑動才有效果,否則執(zhí)行父類方法,沒了? 我僅舉這一例子說明可能存在的一些問題,當然,如果布局中也有其它控件出現(xiàn)類似的情況,那么跟 這個一樣,自己定義一個view,重寫它的 觸摸事件,(其實自定義view很簡單的,哥剛開始也覺得很難,后來 也就那樣....) ,當然,直接finish可能會顯得太單一,你們可以充分發(fā)揮你們的想象,可以添加一些動畫進去,使得界面更加炫,

OK,今天就扯到這里,吃飯 time...

如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • Android開發(fā)之利用ListView動態(tài)刷新某個Item

    Android開發(fā)之利用ListView動態(tài)刷新某個Item

    這篇文章主要介紹了Android開發(fā)之利用ListView動態(tài)刷新某個Item的方法,文章給出了詳解的示例代碼,相信對大家的理解和學(xué)習(xí)具有一定的參考借鑒價值,有需要的朋友們下面來一起跟著小編學(xué)習(xí)學(xué)習(xí)吧。
    2016-12-12
  • Android簡單自定義音樂波動特效圖

    Android簡單自定義音樂波動特效圖

    這篇文章主要為大家詳細介紹了Android簡單自定義音樂波動特效圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Android實現(xiàn)購物車添加商品動畫

    Android實現(xiàn)購物車添加商品動畫

    這篇文章主要為大家詳細介紹了Android實現(xiàn)購物車添加商品動畫,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Android的多媒體管理庫Glide的基本使用示例

    Android的多媒體管理庫Glide的基本使用示例

    這篇文章主要介紹了Android的多媒體管理庫Glide的基本使用示例,Glide在圖片App中的表現(xiàn)非常好,Google旗下的Yelp也在使用,需要的朋友可以參考下
    2016-04-04
  • Android 簡單服務(wù)定位器模式實現(xiàn)

    Android 簡單服務(wù)定位器模式實現(xiàn)

    這篇文章主要介紹了Android 簡單服務(wù)定位器模式實現(xiàn),幫助大家更好的理解和學(xué)習(xí)使用Android,感興趣的朋友可以了解下
    2021-03-03
  • Android手機獲取Mac地址的幾種方法

    Android手機獲取Mac地址的幾種方法

    今天小編就為大家分享一篇關(guān)于Android手機獲取Mac地址的幾種方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • android打開應(yīng)用所在的市場頁面進行評分操作的方法

    android打開應(yīng)用所在的市場頁面進行評分操作的方法

    這篇文章主要介紹了android打開應(yīng)用所在的市場頁面進行評分操作的方法,涉及Android操作市場頁面評分效果的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-04-04
  • TextView使用SpannableString設(shè)置復(fù)合文本 SpannableString實現(xiàn)TextView的鏈接效果

    TextView使用SpannableString設(shè)置復(fù)合文本 SpannableString實現(xiàn)TextView的鏈接

    這篇文章主要為大家詳細介紹了如何利用SpannableString實現(xiàn)TextView的鏈接效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Android?Gradle?三方依賴管理詳解

    Android?Gradle?三方依賴管理詳解

    這篇文章主要介紹了Android?Gradle?三方依賴管理詳解,Gradle的依賴管理是一個從開始接觸Android開發(fā)就一直伴隨著我們的問題,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-08-08
  • Android高仿京東垂直循環(huán)滾動新聞欄

    Android高仿京東垂直循環(huán)滾動新聞欄

    通過自定義的LinearLayout,并且textView能夠循環(huán)垂直滾動,而且條目可以點擊,顯示區(qū)域最多顯示2個條目,并且還有交替的屬性垂直移動的動畫效果,通過線程來控制滾動的實現(xiàn)
    2016-03-03

最新評論