zoukankan      html  css  js  c++  java
  • Android笔记(五十二) 侧滑菜单SlidingMenu

       SlidingMenu是一个优秀的开源项目,可以实现侧滑菜单,简单介绍一下这SlidingMenu的使用:

       常用属性和方法:

    setTouchModeAbove(int i )是否可以通过滑动手势打开menu

       TOUCHMODE_MARGIN = 0  在边缘滑动

       TOUCHMODE_FULLSCREEN = 1 在屏幕任意位置滑动

       TOUCHMODE_NONE = 2 滑动无法打开menu

    setMode(int mode)设置menu出现位置

       LEFT = 0    菜单出现在屏幕左侧

       RIGHT = 1 菜单出现在屏幕右侧

       LEFT_RIGHT = 2  菜单左右都可以划出

    attachToActivity(Activity activity, int slideStyle)将menu附加到activity上

       SLIDING_WINDOW  menu布满全屏(含标题)

       SLIDING_CONTENT menu布满全文(不含标题)

    setBehindOffsetRes(int resID)设置菜单拉出之后,屏幕剩余的尺寸

    setMenu(int res)为菜单设置布局

    例子:

    准备工作:

       1.下载SlidingMenu

       2.下载SlidingMenu的依赖组件ActionBarSherlock

       3.导入SlidingMenu和ActionBarSherlock

       4.项目引入SlidingMenu和ActionBarSherlock

    MainActivity.java

    package cn.lixyz.slidingmenu;
    
    import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
    
    import android.app.Activity;
    import android.os.Bundle;
    
    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);
    
            slidingMenu.setMode(SlidingMenu.LEFT);
            slidingMenu.setBehindOffsetRes(R.dimen.sliding_menu_offset);
            slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
            slidingMenu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
            // 为侧滑菜单设置布局
            slidingMenu.setMenu(R.layout.sliding_mune);
    
        }
    }

    sliding_mune.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        <com.jeremyfeinstein.slidingmenu.lib.SlidingMenu
            android:id="@+id/slidingmenulayout"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#00ff00" >
    
            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="设置" >
            </Button>
        </com.jeremyfeinstein.slidingmenu.lib.SlidingMenu>
    
    </LinearLayout>

    dimens.xml

    <resources>
    
        <!-- Default screen margins, per the Android Design guidelines. -->
        <dimen name="activity_horizontal_margin">16dp</dimen>
        <dimen name="activity_vertical_margin">16dp</dimen>
        <dimen name="sliding_menu_offset">150dp</dimen>
    
    </resources>

      运行效果

  • 相关阅读:
    思考问题的方式
    领域模型驱动设计读书笔记
    Oracle树形表和递归查询
    java中List , Set , Array相互转换
    JAVA两个数组间元素的比较(找出相同或者不同元素)
    java中的过滤器写法
    打印功能--调整表头
    @WebFilter注解
    深入理解JVM-内存模型(jmm)和GC
    vue生命周期函数
  • 原文地址:https://www.cnblogs.com/xs104/p/4943713.html
Copyright © 2011-2022 走看看