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

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

AndroidScrollView嵌套橫向滑動(dòng)控件時(shí)沖突問題

前言:今天在開發(fā)的時(shí)候遇到這樣的問題,最外層是ScrollView,里面嵌套了一個(gè)橫向滑動(dòng)的日歷控件,在滑動(dòng)日歷的時(shí)候很卡頓??吹竭@種問題,自然而然的就會(huì)想到scrollview和其他可滑動(dòng)控件的沖突問題。

十載的寧晉網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整寧晉建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“寧晉網(wǎng)站設(shè)計(jì)”,“寧晉網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

解決思路

用戶的左右滑動(dòng)操作被最外層的scrollView控件處理掉了,所以只要讓scrollview對左右滑動(dòng)事件不監(jiān)聽,讓其子控件處理左右滑動(dòng)事件 。重寫scrollview的onInterceptTouchEvent方法,當(dāng)上下滑動(dòng)時(shí)不處理即可。

代碼如下

public void setOnScollChangedListener(OnScollChangedListener onScollChangedListener) {
  this.onScollChangedListener = onScollChangedListener;
}

@Override
protected void onScrollChanged(int x, int y, int oldx, int oldy) {
  super.onScrollChanged(x, y, oldx, oldy);
  if (onScollChangedListener != null) {
    onScollChangedListener.onScrollChanged(this, x, y, oldx, oldy);
  }
}

public interface OnScollChangedListener {

  void onScrollChanged(ObservableScrollView scrollView, int x, int y, int oldx, int oldy);

}

@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;

    /**
     * X軸滑動(dòng)距離大于Y軸滑動(dòng)距離,也就是用戶橫向滑動(dòng)時(shí),返回false,ScrollView不處理這次事件,
     * 讓子控件中的TouchEvent去處理,所以橫向滑動(dòng)的事件交由子控件處理, ScrollView只處理縱向滑動(dòng)事件
     */
    if (xDistance > yDistance) {
      return false;
    }
  }

  return super.onInterceptTouchEvent(ev);
}
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


網(wǎng)頁標(biāo)題:AndroidScrollView嵌套橫向滑動(dòng)控件時(shí)沖突問題
文章鏈接:http://weahome.cn/article/gjogpc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部