第三方侧滑菜单SlidingMenu在android studio中的使用


首先我们先把第三方控件导入到AndroidStudio

详情网址:


注意:JDK6以上的会出现源代码报错,FloatMath 修改成Math,就行了


先看运行效果



具体使用

MainActivity中

public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        // configure the SlidingMenu
        SlidingMenu menu = new SlidingMenu(this);
        menu.setMode(SlidingMenu.LEFT);
        // 设置触摸屏幕的模式
        menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
        menu.setShadowWidthRes(R.dimen.shadow_width);
        menu.setShadowDrawable(R.color.colorAccent);
 
        // 设置滑动菜单视图的宽度
        menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
        // 设置渐入渐出效果的值
        menu.setFadeDegree(0.35f);
        /**
         * SLIDING_WINDOW will include the Title/ActionBar in the content
         * section of the SlidingMenu, while SLIDING_CONTENT does not.
         */
        menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
        //为侧滑菜单设置布局
        menu.setMenu(R.layout.left_menu);
    }
}

主布局和侧拉布局自己定义


<dimen name="slidingmenu_offset">60dp</dimen>
<dimen name="shadow_width">15dp</dimen>


上面一些代码可能很多人不知道什么意思,那就看下面的详解


SlidingMenu的一些常用属性


//设置侧滑菜单的位置,可选值LEFT , RIGHT , LEFT_RIGHT (两边都有菜单时设置)
menu.setMode(SlidingMenu.LEFT_RIGHT);
// 设置触摸屏幕的模式,可选只MARGIN , CONTENT 
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
//根据dimension资源文件的ID来设置阴影的宽度
menu.setShadowWidthRes(R.dimen.shadow_width);
//根据资源文件ID来设置滑动菜单的阴影效果
menu.setShadowDrawable(R.drawable.shadow);
// 这两个都是设置滑动菜单视图的宽度,二选一
//设置SlidingMenu离屏幕的偏移量
menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
//设置宽度
menu.setBehindWidth()
// 设置渐入渐出效果的值
menu.setFadeDegree(0.35f);
//设置SlidingMenu与下方视图的移动的速度比,当为1时同时移动,取值0-1
menu.setBehindScrollScale(1.0f);
//设置二级菜单的阴影效果 
menu.setSecondaryShadowDrawable(R.drawable.shadow);
//设置右边(二级)侧滑菜单
menu.setSecondaryMenu(R.layout.right_menu_frame);
//为侧滑菜单设置布局
menu.setMenu(R.layout.leftmenu);
//把滑动菜单添加进所有的Activity中,可选值SLIDING_CONTENT , SLIDING_WINDOW
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);

 还有几个监听事件:
[java] view plain copy
  1. /** 
  2.      * 设置打开监听事件,当滑动菜单被打开时调用 
  3.      */  
  4.     public void setOnOpenListener(OnOpenListener listener) {  
  5.         mOpenListener = listener;  
  6.     }  
  7.   
  8.     /** 
  9.      * 设置关闭监听事件,当滑动菜单被关闭时调用 
  10.      */  
  11.     public void setOnCloseListener(OnCloseListener listener) {  
  12.         //mViewAbove.setOnCloseListener(listener);  
  13.         mCloseListener = listener;  
  14.     }  
  15.   
  16.     /** 
  17.      * 设置打开监听事件,当滑动菜单被打开过之后调用 
  18.      */  
  19.     public void setOnOpenedListener(OnOpenedListener listener) {  
  20.         mViewAbove.setOnOpenedListener(listener);  
  21.     }  
  22.   
  23.     /** 
  24.      * 设置关闭监听事件,当滑动菜单被关闭过之后调用 
  25.      */  
  26.     public void setOnClosedListener(OnClosedListener listener) {  
  27.         mViewAbove.setOnClosedListener(listener);  
  28.     }  

希望对大家有帮助。


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值