【问题标题】:Disable swipe of a view pager when its child item is clicked单击其子项时禁用视图寻呼机的滑动
【发布时间】:2015-10-01 13:08:59
【问题描述】:

我遇到了 Viewpager 的问题。如何在在适配器内部滑动其子视图时停止滑动视图寻呼机。我附上了关于我的屏幕的图像。

当我点击水平 ListView 时,整个 Viewpager 正在滑动。我希望视图寻呼机仅在未触摸水平 Listview 时滑动。谢谢

【问题讨论】:

    标签: android android-viewpager swipe horizontallistview


    【解决方案1】:
    //here this code is writing for disable scroll of parent item so same thing you 
    can do it you can disable it from your child here
    
    vp.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                v.getParent().requestDisallowInterceptTouchEvent(true);
                return false;
            }
        });
    vp.setOnPageChangeListener(new OnPageChangeListener() {
    
            @Override
            public void onPageSelected(int arg0) {
                // TODO Auto-generated method stub
    
            }
    
            @Override
            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub
                vp.getParent().requestDisallowInterceptTouchEvent(true);
            }
    
            @Override
            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub
    
            }
        });
    

    【讨论】:

    • 感谢 @ Milap,我应该在哪里写它,在适配器类或 Viewpager 主类中。当我在 Image Shown 中的水平 Listview 被触摸时,我必须禁用 View Pager 的滑动
    • 我认为你需要将它写入Viewpager主类
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多