SlidingMenu简单使用

来源:互联网 发布:开发者没有网络adb调试 编辑:程序博客网 时间:2024/04/25 20:23

SlidingMenu简单使用-用案例来说话!


一、简单的使用slidingmenu效果图

这里写图片描述


二、slidingmenu的常用属性

menu.setMode(SlidingMenu.LEFT);//设置左滑菜单
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//设置滑动的屏幕范围,该设置为全屏区域都可以滑动
menu.setShadowDrawable(R.drawable.shadow);//设置阴影图片
menu.setShadowWidthRes(R.dimen.shadow_width);//设置阴影图片的宽度
menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);//SlidingMenu划出时主页面显示的剩余宽度
menu.setBehindWidth(400);//设置SlidingMenu菜单的宽度
menu.setFadeDegree(0.35f);//SlidingMenu滑动时的渐变程度
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);//使SlidingMenu附加在Activity上
menu.setMenu(R.layout.menu_layout);//设置menu的布局文件
menu.toggle();//动态判断自动关闭或开启SlidingMenu
menu.showMenu();//显示SlidingMenu
menu.showContent();//显示内容
menu.setOnOpenListener(onOpenListener);//监听slidingmenu打开
关于关闭menu有两个监听,简单的来说,对于menu close事件,一个是when,一个是after
menu.OnClosedListener(OnClosedListener);//监听slidingmenu关闭时事件
menu.OnClosedListener(OnClosedListener);//监听slidingmenu关闭后事件

左右都可以划出SlidingMenu菜单只需要设置
menu.setMode(SlidingMenu.LEFT_RIGHT);属性,然后设置右侧菜单的布局文件
menu.setSecondaryShadowDrawable(R.drawable.shadowright);//右侧菜单的阴影图片

  • 设置SlidingMenu属性

    设置SlidingMenu属性
    sm = getSlidingMenu();
    //如果只显示左侧菜单就是用LEFT,右侧就RIGHT,左右都支持就LEFT_RIGHT
    sm.setMode(SlidingMenu.LEFT_RIGHT);//设置菜单滑动模式,菜单是出现在左侧还是右侧,还是左右两侧都有
    sm.setShadowDrawable(R.drawable.shadow);//设置阴影的图片资源
    sm.setShadowWidthRes(R.dimen.shadow_width);//设置阴影图片的宽度
    //sm.setBehindWidth(200);//设置菜单的宽
    sm.setBehindOffsetRes(R.dimen.slidingmenu_offset);//SlidingMenu划出时主页面显示的剩余宽度
    sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//设置滑动的区域

  • 支持右侧划出菜单:

//SlidingMenu可以同时支持划出左右两侧的菜单,互不冲突,而且动画优美,体验良好。
sm.setSecondaryMenu(R.layout.menu_frame2);//设置右侧菜单
sm.setSecondaryShadowDrawable(R.drawable.shadowright);//设置右侧菜单阴影的图片资源
//右侧SlidingMenu的Fragment
getSupportFragmentManager().beginTransaction().replace(R.id.menu_frame2, new >SampleListFragment()).commit();

slidingMenu = getSlidingMenu();
//设置是左滑还是右滑,还是左右都可以滑
slidingMenu.setMode(SlidingMenu.LEFT_RIGHT);
//设置阴影宽度
slidingMenu.setShadowWidth(getWindowManager().getDefaultDisplay().getWidth() / 40);
//设置左菜单阴影图片
slidingMenu.setShadowDrawable(R.drawable.shadow);
//设置右菜单阴影图片
slidingMenu.setSecondaryShadowDrawable(R.drawable.right_shadow);
//设置菜单占屏幕的比例
slidingMenu.setBehindOffset(getWindowManager().getDefaultDisplay().getWidth() / 5);
//设置滑动时菜单的是否淡入淡出
slidingMenu.setFadeEnabled(true);
//设置淡入淡出的比例
slidingMenu.setFadeDegree(0.4f);
//设置滑动时拖拽效果
slidingMenu.setBehindScrollScale(0);
//设置要使菜单滑动,触碰屏幕的范围
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);

上面内容,感谢作者:qwer20042127
链接:http://my.eoe.cn/1169143/archive/21892.html


三、slidingmenu简单案例,只用到了几个常用的属性

  • 我们的布局
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:id="@+id/activity_main"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:background="#f64">    <TextView        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:text="我是主界面"        android:textColor="#ffffff"        android:textSize="45sp"/>    <com.jeremyfeinstein.slidingmenu.lib.SlidingMenu        android:layout_width="match_parent"        android:layout_height="match_parent"    >    </com.jeremyfeinstein.slidingmenu.lib.SlidingMenu></RelativeLayout>
  • 效果图
    这里写图片描述

  • 这里是子布局代码

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:id="@+id/activity_main"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"><TextView    android:id="@+id/tv1"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:layout_margin="20dp"    android:background="#f47548"    android:text="我是第一项"/>    <TextView        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_margin="20dp"        android:background="#f47548"        android:text="我是第二项"/>    <TextView        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_margin="20dp"        android:background="#f47548"        android:text="我是第三项"/></LinearLayout>

这里写图片描述
- main类代码

package tester.ermu.com.sindingmenudemo;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.TextView;import android.widget.Toast;import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;public class MainActivity extends Activity {private SlidingMenu slidingMenu;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        slidingMenu = new SlidingMenu(this);        init();    }//这里面就是获取我们slidingmenu中的子空间,用于监听子空间    private void setview(View view) {        TextView tv1 = (TextView)view.findViewById(R.id.tv1);        tv1.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Toast.makeText(MainActivity.this,"你点击了item1",Toast.LENGTH_SHORT).show();            }        });    }    private void init() {        //位置靠左,        slidingMenu.setMode(SlidingMenu.LEFT);        //设置偏移量        slidingMenu.setBehindOffset(180);        //        slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);        slidingMenu.attachToActivity(this,SlidingMenu.SLIDING_CONTENT);        slidingMenu.setMenu(R.layout.sidingitem_main);//获取子空间布局        View view = slidingMenu.getMenu();        setview(view);    }}

上面init方法中就是最主要的几句方法。很容易理解,只要添加正确依赖资源,如果不会请看我上一篇博客,有图有真相!


demo地址:http://download.csdn.net/detail/bobo8945510/9679175

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 苹果手机打不开pdf怎么办 pdf文件超过了怎么办 pdf电脑删不了怎么办 联想笔记本摄像头横屏调竖屏怎么办 pdf文件打开失败怎么办 pdf复制文字乱码怎么办 电子发票乱码了怎么办 超星尔雅挂了怎么办 电脑应用双击打不开怎么办 电脑控制面板打不开怎么办 转换器无法打开文件怎么办 电脑文件无法打开怎么办 手机上jpg打不开怎么办 脸上全是黄褐斑怎么办 容易发胖的体质怎么办 感冒后一直咳嗽怎么办 感冒咳嗽怎么办小窍门 到了减肥平台期怎么办 减肥遇见平台期怎么办 脚冻伤了痒怎么办 冬天脚后跟冻了怎么办 夏天脚冻了怎么办 导航软件删了怎么办 婆婆爱打孩子怎么办 乙肝婆婆带孩子怎么办 婆婆不会教孩子怎么办 婆婆不会带孩子怎么办 公婆枪带孩子怎么办 婆婆要带孩子怎么办 婆婆太惯孩子怎么办 三个月宝宝溢奶怎么办 孩子半夜咳嗽吐怎么办 中老年人转氨酶和血指高怎么办 孩子逆反心强怎么办 孩子学习逆反了怎么办 翼支付登陆不了怎么办 微波炉鸡蛋炸了怎么办 百部书挂了怎么办 高考物理零基础怎么办 装修后地面胶怎么办 装修地面上的胶怎么办