欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  技术分享

Android抽屉式左右侧滑菜单Demo源代码下载

程序员文章站 2022-03-01 12:52:08
...

SlidingMenu架包用于在项目中添加左右侧滑非常方便简洁、使用的方式也非常简单、架包的源码也一同包含在内、侧滑滑动区域也可以设置自定义的模式、如menu.setTouchModeAbove( SlidingMenu.TOUCHMODE_FULLSCREEN );则设置为边缘滑动模式

即只有滑动边缘的时候才会启动菜单、也可设置为其他模式、以使用不同的开发需求、这样既可解决滑动事件冲突问题!对于Android开发者非常方便

Android抽屉式左右侧滑菜单Demo源代码下载


onCreate() 代码

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    conFragment = new ContentFragment();// 新建主页
    menuFragment = new MenuFragment();// 新建菜单

    menu = new SlidingMenu(this, SlidingMenu.SLIDING_CONTENT);
    menu.setMenu(R.layout.menu_main);
    menu.setSecondaryMenu(R.layout.second_menu);
    // menu.setSecondaryShadowDrawable(R.drawable.shadow);
    menu.setShadowWidth(20);// 设置阴影有立体效果
    menu.setShadowDrawable(R.drawable.shadow);
    menu.setBehindOffset(50);
    menu.setBehindScrollScale(1);
    menu.setBehindWidth((int) (getWindowManager().getDefaultDisplay().getWidth() * 0.6));
    menu.setFadeDegree(1.0f);
    menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
    menu.setMode(SlidingMenu.LEFT_RIGHT);

    initView();
}


initView() 代码

private void initView() {
 
    button = (Button) this.findViewById(R.id.exit);
    button.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            MainActivity.this.finish();
        }
    });

    FragmentTransaction ft = this.getSupportFragmentManager().beginTransaction();
    ft.replace(R.id.content_frame, conFragment);
    ft.replace(R.id.menu_frame, menuFragment);
    ft.commit();
}


切换主页对应菜单的内容代码

public void switchContent(Fragment fragment) {
    FragmentTransaction ft = this.getSupportFragmentManager().beginTransaction();
    conFragment = fragment;
    ft.replace(R.id.content_frame, conFragment);
    ft.addToBackStack(null);
    ft.commit();
    menu.showContent();
}


最后给贴上Demo的源代码、希望对大家有用、有兴趣的哥们可以下载看看

源代码下载链接: http://dwtedx.com/download.html?bdkey=s/1i32LLJZ 密码: 2enj