Android解決viewpager嵌套滑動(dòng)沖突并保留側(cè)滑菜單功能
重寫(xiě)子pagerview的dispatchTouchEvent方法,在返回前添加一句getParent().requestDisallowInterceptTouchEvent(true)中斷掉事件的傳遞,類(lèi)如下
public class SupperViewPager extends ViewPager {
private int screenWidth;//屏幕寬度
public SupperViewPager(Context context) {
super(context);
}
public SupperViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO 自動(dòng)生成的構(gòu)造函數(shù)存根
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
screenWidth = MeasureSpec.getSize(widthMeasureSpec);//view測(cè)量時(shí)獲取屏幕寬度
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
// screenWidth = getResources().getDisplayMetrics().widthPixels;
System.out.println("屏幕寬度" + screenWidth);
/*判斷屏幕是否滿(mǎn)足一定條件,滿(mǎn)足則中斷時(shí)間
即,兩邊各留出一定寬度使靠邊滑動(dòng)時(shí)可以相應(yīng)父pagerview 的事件,例如左邊有側(cè)滑菜單,右邊靠邊可以滑到另一個(gè)父viewpager的下一個(gè)*/
if (ev.getRawX() > screenWidth / 8 && ev.getRawX() < screenWidth * 7 / 8) {
getParent().requestDisallowInterceptTouchEvent(true);
}
return super.dispatchTouchEvent(ev);
}
}
以上所述是小編給大家介紹的Android解決viewpager嵌套滑動(dòng)沖突并保留側(cè)滑菜單功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Android游戲之?dāng)?shù)獨(dú)游戲開(kāi)發(fā)
這篇文章主要為大家詳細(xì)介紹了Android游戲之?dāng)?shù)獨(dú)游戲開(kāi)發(fā)的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
Android界面一鍵變灰開(kāi)發(fā)深色適配模式編程示例
這篇文章主要為大家介紹了Android界面一鍵變灰開(kāi)發(fā)深色適配模式編程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04
Android TouchListener實(shí)現(xiàn)拖拽刪實(shí)例代碼
這篇文章主要介紹了Android TouchListener實(shí)現(xiàn)拖拽刪實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2017-02-02
Android自定義View實(shí)現(xiàn)雪花特效
這篇文章主要為大家詳細(xì)介紹了Android自定義View實(shí)現(xiàn)雪花特效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-02-02
Navigation?Bundle實(shí)現(xiàn)兩個(gè)Fragment參數(shù)傳遞
這篇文章主要為大家介紹了Navigation?Bundle實(shí)現(xiàn)兩個(gè)Fragment參數(shù)傳遞,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
Android Activity 入門(mén)簡(jiǎn)介
Activity 是一個(gè)應(yīng)用組件,用戶(hù)可與其提供的屏幕進(jìn)行交互,以執(zhí)行撥打電話(huà)、拍攝照片、發(fā)送電子郵件或查看地圖等操作,這篇文章主要介紹了Android Activity入門(mén)基礎(chǔ)知識(shí),需要的朋友可以參考下2024-04-04
Android中利用App實(shí)現(xiàn)消息推送機(jī)制的代碼
Android中利用App實(shí)現(xiàn)消息推送機(jī)制的代碼,需要的朋友可以參考下。2011-05-05
Android入門(mén)之ViewFlipper翻轉(zhuǎn)視圖的使用詳解
本篇給大家?guī)Я说氖荲iewFlipper,它是Android自帶的一個(gè)多頁(yè)面管理控件,且可以自動(dòng)播放!本篇我們我們會(huì)使用兩個(gè)例子:一個(gè)自動(dòng)播放首頁(yè)輪播頁(yè)一個(gè)手動(dòng)可左右滑動(dòng)道頁(yè)的輪播頁(yè)來(lái)說(shuō)透這個(gè)組件的使用,感興趣的可以了解一下2022-11-11

