亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android 實(shí)現(xiàn)局部圖片滑動(dòng)指引效果

 更新時(shí)間:2017年01月23日 11:00:45   投稿:lqh  
這篇文章主要介紹了Android 實(shí)現(xiàn)局部圖片滑動(dòng)指引效果的相關(guān)資料,需要的朋友可以參考下

Android 實(shí)現(xiàn)局部圖片滑動(dòng)指引效果

而ViewPager的事件監(jiān)聽(tīng)器代碼如下:

  // 滑動(dòng)頁(yè)面更改事件監(jiān)聽(tīng)器
  private class ImagePageChangeListener implements OnPageChangeListener {
    @Override 
    public void onPageScrollStateChanged(int arg0) { 
      // TODO Auto-generated method stub 
 
    } 
 
    @Override 
    public void onPageScrolled(int arg0, float arg1, int arg2) { 
      // TODO Auto-generated method stub 
 
    } 
 
    @Override 
    public void onPageSelected(int index) { 
      pageIndex = index;
      slideLayout.setPageIndex(index);
      tvSlideTitle.setText(parser.getSlideTitles()[index]);
      
      for (int i = 0; i < imageCircleViews.length; i++) { 
        imageCircleViews[index].setBackgroundResource(R.drawable.dot_selected);
        
        if (index != i) { 
          imageCircleViews[i].setBackgroundResource(R.drawable.dot_none); 
        } 
      }
    } 
  }
 

  事件監(jiān)聽(tīng)器中主要在回調(diào)函數(shù)onPageSelected(int index)中變換標(biāo)題和圓點(diǎn)圖片。 

  由于滑動(dòng)區(qū)域下方的內(nèi)容是不變的,也就是不滑動(dòng)的,正如在我在上面提到的,內(nèi)容可能會(huì)超出屏幕的范圍,所以我們需要使用ScrollView以便內(nèi)容過(guò)多的時(shí)候顯示滾動(dòng)條。可能一部分朋友會(huì)想到,要顯示滾動(dòng)條我也知道使用ScrollView。我想在這里說(shuō)的是,這里即有ViewPager控件,也有ScrollView,如果兩個(gè)View單獨(dú)使用不會(huì)有什么問(wèn)題。然而不幸的是,兩個(gè)一結(jié)合使用就出現(xiàn)了問(wèn)題。什么問(wèn)題呢?就是在滑動(dòng)圖片時(shí)出現(xiàn)反彈的現(xiàn)象,就是在滑動(dòng)時(shí)很難滑動(dòng),我滑動(dòng)時(shí)感覺(jué)很吃力,而且圖片就是滑動(dòng)不過(guò)去,這個(gè)就是兩個(gè)View之間的沖突,因?yàn)閮蓚€(gè)View都是滑動(dòng)的View,都會(huì)計(jì)算相應(yīng)的位置和判斷相應(yīng)的距離。 

  我們?nèi)绾蝸?lái)解決這個(gè)沖突呢?這里我們需要重寫(xiě)ScrollView的onInterceptTouchEvent()回調(diào)函數(shù)。需要在程序里新加一個(gè)ScrollViewExtend類并繼承自ScrollView,下面是其代碼:

package com.image.indicator.control;

import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.ScrollView;

/**
 * 能夠兼容ViewPager的ScrollView
 * @Description: 解決了ViewPager在ScrollView中的滑動(dòng)反彈問(wèn)題

 * @File: ViewPagerCompatScrollView.java

 * @Package com.image.indicator.control

 * @Author Hanyonglu

 * @Date 2012-6-18 下午01:34:50

 * @Version V1.0
 */
public class ScrollViewExtend extends ScrollView {
  // 滑動(dòng)距離及坐標(biāo)
  private float xDistance, yDistance, xLast, yLast;

  public ScrollViewExtend(Context context, AttributeSet attrs) {
    super(context, attrs);
  }

  @Override
  public boolean onInterceptTouchEvent(MotionEvent ev) {
    switch (ev.getAction()) {
      case MotionEvent.ACTION_DOWN:
        xDistance = yDistance = 0f;
        xLast = ev.getX();
        yLast = ev.getY();
        break;
      case MotionEvent.ACTION_MOVE:
        final float curX = ev.getX();
        final float curY = ev.getY();
        
        xDistance += Math.abs(curX - xLast);
        yDistance += Math.abs(curY - yLast);
        xLast = curX;
        yLast = curY;
        
        if(xDistance > yDistance){
          return false;
        } 
    }

    return super.onInterceptTouchEvent(ev);
  }
}

感謝閱讀,希望能幫助到大家,謝謝大家對(duì) 本站的支持!

相關(guān)文章

  • Android用tabhost實(shí)現(xiàn) 界面切換,每個(gè)界面為一個(gè)獨(dú)立的activity操作

    Android用tabhost實(shí)現(xiàn) 界面切換,每個(gè)界面為一個(gè)獨(dú)立的activity操作

    這篇文章主要介紹了Android用tabhost實(shí)現(xiàn) 界面切換,每個(gè)界面為一個(gè)獨(dú)立的activity操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Android ContentResolver使用說(shuō)明

    Android ContentResolver使用說(shuō)明

    這篇文章主要介紹了Android ContentResolver使用說(shuō)明,需要的朋友可以參考下
    2016-01-01
  • 說(shuō)說(shuō)Android的UI刷新機(jī)制的實(shí)現(xiàn)

    說(shuō)說(shuō)Android的UI刷新機(jī)制的實(shí)現(xiàn)

    這篇文章主要介紹了說(shuō)說(shuō)Android的UI刷新機(jī)制的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Android DrawLayout結(jié)合ListView用法實(shí)例

    Android DrawLayout結(jié)合ListView用法實(shí)例

    這篇文章主要介紹了Android DrawLayout結(jié)合ListView用法實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Android觸摸事件傳遞機(jī)制

    Android觸摸事件傳遞機(jī)制

    這篇文章主要介紹了Android觸摸事件傳遞機(jī)制,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • OkHttp3中默認(rèn)不保持Cookie的解決方法

    OkHttp3中默認(rèn)不保持Cookie的解決方法

    這篇文章主要給大家介紹了關(guān)于OkHttp3中默認(rèn)不保持Cookie的解決方法,文中先對(duì)OKhttp3中的cookies進(jìn)行了簡(jiǎn)單的介紹,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-04-04
  • 如何利用Flutter實(shí)現(xiàn)酷狗流暢Tabbar效果

    如何利用Flutter實(shí)現(xiàn)酷狗流暢Tabbar效果

    這篇文章主要給大家介紹了關(guān)于如何利用Flutter實(shí)現(xiàn)酷狗流暢Tabbar效果的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-02-02
  • Android仿微信滑動(dòng)退出Activity

    Android仿微信滑動(dòng)退出Activity

    這篇文章主要介紹了Android仿微信滑動(dòng)退出Activity的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下
    2016-12-12
  • Android開(kāi)發(fā)騰訊驗(yàn)證碼遇到的坑

    Android開(kāi)發(fā)騰訊驗(yàn)證碼遇到的坑

    這篇文章主要介紹了Android開(kāi)發(fā)騰訊驗(yàn)證碼遇到的坑,需要的朋友可以參考下
    2017-12-12
  • Android實(shí)現(xiàn)訂單倒計(jì)時(shí)功能

    Android實(shí)現(xiàn)訂單倒計(jì)時(shí)功能

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)訂單倒計(jì)時(shí)的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01

最新評(píng)論