滑动菜单栏位于ViewPager选项卡之上.如何阻止这种情况的发生



我的滑动菜单使用这个库。https://github.com/jfeinstein10/SlidingMenu

我最大的问题是,我使用的是ViewPagerIndicator。因此,假设我在视图寻呼机中添加了三个选项卡,在其中我膨胀了三个片段,Tab1、Tab2和Tab3。

从右向左滑动时,我从Tab1转到Tab2。在Tab1从左向右滑动时,滑动菜单打开。

但假设我在表2中,然后从左向右滑动。这应该打开选项卡1,而不是滑动菜单,它在这里这样做。

在我的BaseActivity中,这是我添加的代码:

    menu = new SlidingMenu(this);
    menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
    //menu.setShadowWidthRes(R.dimen.shadow_width);
    //menu.setShadowDrawable(R.drawable.shadow);
//  menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
    menu.setFadeDegree(0.35f);
        menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
        menu.setMenu(R.layout.base_layout);

    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

当我不在Tab1中时,如何停止幻灯片菜单进行滑动?

你应该看看它提供的示例应用程序,示例总是给你意想不到的解决方案。

yourViewPagerIndicator.setOnPageChangeListener(new OnPageChangeListener() {
    @Override
    public void onPageScrollStateChanged(int arg0) { }
    @Override
    public void onPageScrolled(int arg0, float arg1, int arg2) { }
    @Override
    public void onPageSelected(int position) {
        switch (position) {
            case 0:
                getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
                break;
            default:
                getSlidingMenu().setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
                break;
        }
    }
});

当您在选项卡布局中时,通过调用getSlidingMenu().setSlidingEnabled(false);可以停止幻灯片菜单的另一种方法

相关内容

最新更新