SlidingMenu属性详解

SlidingMenu是一款开源的Android开发类库,它可以让开发者在自己的Android App中非常便捷地创建侧滑菜单,类似Google+, YouTube, 和Facebook的App菜单。下面先来看看SlidingMenu的效果图。

使用方法

一个简单的DEMO示例:

  1. public class SlidingExample extends Activity {
  2. @Override
  3. public void onCreate(Bundle savedInstanceState) {
  4. super.onCreate(savedInstanceState);
  5. setTitle(R.string.attach);
  6. // set the content view
  7. setContentView(R.layout.content);
  8. // configure the SlidingMenu
  9. SlidingMenu menu = new SlidingMenu(this);
  10. menu.setMode(SlidingMenu.LEFT);
  11. menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
  12. menu.setShadowWidthRes(R.dimen.shadow_width);
  13. menu.setShadowDrawable(R.drawable.shadow);
  14. menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
  15. menu.setFadeDegree(0.35f);
  16. menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
  17. menu.setMenu(R.layout.menu);
  18. }
  19. }

XML配置方式

如果你想把SlidingMenu当做view来使用,那么xml布局文件可以写成以下这样:

  1. <com.jeremyfeinstein.slidingmenu.lib.SlidingMenu
  2. xmlns:sliding="http://schemas.android.com/apk/res-auto"
  3. android:id="@+id/slidingmenulayout"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. sliding:viewAbove="@layout/YOUR_ABOVE_VIEW"
  7. sliding:viewBehind="@layout/YOUR_BEHIND_BEHIND"
  8. sliding:touchModeAbove="margin|fullscreen"
  9. sliding:behindOffset="@dimen/YOUR_OFFSET"
  10. sliding:behindWidth="@dimen/YOUR_WIDTH"
  11. sliding:behindScrollScale="@dimen/YOUR_SCALE"
  12. sliding:shadowDrawable="@drawable/YOUR_SHADOW"
  13. sliding:shadowWidth="@dimen/YOUR_SHADOW_WIDTH"
  14. sliding:fadeEnabled="true|false"
  15. sliding:fadeDegree="float"
  16. sliding:selectorEnabled="true|false"
  17. sliding:selectorDrawable="@drawable/YOUR_SELECTOR"/>

注意:你不能同时使用behindOffset和behindWidth,不然会出错。

Android SlidingMenu侧滑菜单使用介绍

现在很多android应用都有侧滑菜单,效果很不错。

GitHub上有SlidingMenu的开源库,使用起来很方便。

SlidingMenu GitHub地址:https://github.com/jfeinstein10/SlidingMenu。GitHub上说,Sliding结合 ActionBarSherlock使用功能可以更丰富,ActionBarSherlock GitHub地址:https://github.com/JakeWharton/ActionBarSherlock

下面,介绍下SlidingMenu的使用。

(1)从GitHub上download zip到本地,解压缩,得到其中的一个文件夹,library。

(2)Eclipse import  Existing Android Code Into Workspace。 点击项目右键 properties->Android,可以看到,其 Is Library。

(3)在将使用SlidingMenu的项目上点击右键 properties->Android,Library下将(2)导入的项目add进去。

(4)为保证SlidingMenu库应用到项目中成功,必须保证项目使用的libs和SlidingMenu库使用的libs版本一致,主要是指 android-support-v4.jar。如果项目libs不存在或编译不通过,可以尝试新建libs文件夹,并置入android- support-v4.jar。在libs上右键->Build Path->Use as Source。一般可以解决。

(5)第(4)步之后,便可以在项目中直接使用SlidingMenu。

Java代码:MainActivity:

  1. package com.jj.testslidingmenu;
  2. import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
  3. import android.os.Bundle;
  4. import android.app.Activity;
  5. import android.view.KeyEvent;
  6. import android.view.Menu;
  7. public class MainActivity extends Activity {
  8. SlidingMenu slidingMenu;
  9. @Override
  10. protected void onCreate(Bundle savedInstanceState) {
  11. super.onCreate(savedInstanceState);
  12. setContentView(R.layout.activity_main);
  13. slidingMenu = new SlidingMenu(this);
  14. slidingMenu.setMode(SlidingMenu.LEFT);
  15. slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
  16. slidingMenu.setBehindOffsetRes(R.dimen.slidingmenu_offset);
  17. slidingMenu.setMenu(R.layout.slidingmenu);
  18. slidingMenu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
  19. }
  20. @Override
  21. public boolean onKeyDown(int key, KeyEvent event){
  22. switch (key) {
  23. case KeyEvent.KEYCODE_MENU:
  24. slidingMenu.toggle(true);
  25. break;
  26. default:
  27. break;
  28. }
  29. return false;
  30. }
  31. }

XMl布局代码:layout/slidingmenu.xml:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:orientation="vertical"
  6. android:background="#ff999999">
  7. <com.jeremyfeinstein.slidingmenu.lib.SlidingMenu
  8. android:id="@+id/slidingmenu"
  9. android:layout_width="match_parent"
  10. android:layout_height="match_parent"
  11. >
  12. <Button
  13. android:layout_width="match_parent"
  14. android:layout_height="wrap_content"
  15. android:text = "click me"/>
  16. </com.jeremyfeinstein.slidingmenu.lib.SlidingMenu>
  17. </LinearLayout>

对于SlidingMenu常用的一些属性设置记录如下:

  1. menu.setMode(SlidingMenu.LEFT);//设置左滑菜单
  2. menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//设置滑动的屏幕范围,该设置为全屏区域都可以滑动
  3. menu.setShadowDrawable(R.drawable.shadow);//设置阴影图片
  4. menu.setShadowWidthRes(R.dimen.shadow_width);//设置阴影图片的宽度
  5. menu.setBehindOffsetRes(R.dimen.slidingmenu_offset);//SlidingMenu划出时主页面显示的剩余宽度
  6. menu.setBehindWidth(400);//设置SlidingMenu菜单的宽度
  7. menu.setFadeDegree(0.35f);//SlidingMenu滑动时的渐变程度
  8. menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);//使SlidingMenu附加在Activity上
  9. menu.setMenu(R.layout.menu_layout);//设置menu的布局文件
  10. menu.toggle();//动态判断自动关闭或开启SlidingMenu
  11. menu.showMenu();//显示SlidingMenu
  12. menu.showContent();//显示内容
  13. menu.setOnOpenListener(onOpenListener);//监听slidingmenu打开
  14. menu.setOnOpenedListener(onOpenedlistener);监听slidingmenu打开后
  15. menu.OnCloseListener(OnClosedListener);//监听slidingmenu关闭时事件
  16. menu.OnClosedListener(OnClosedListener);//监听slidingmenu关闭后事件
  17. 左右都可以划出SlidingMenu菜单只需要设置
  18. menu.setMode(SlidingMenu.LEFT_RIGHT);属性,然后设置右侧菜单的布局文件
  19. menu.setSecondaryMenu(R.layout.menu_fram2);//设置右侧菜单
  20. menu.setSecondaryShadowDrawable(R.drawable.shadowright);//右侧菜单的阴影图片

原文链接:http://www.codeceo.com/article/android-slidingmenu-2.html

时间: 2024-07-30 12:34:28

SlidingMenu属性详解的相关文章

【Android】SlidingMenu属性详解(转)

原文:http://my.eoe.cn/1169143/archive/21892.html SlidingMenu简介:SlidingMenu的是一种比较新的设置界面或配置界面效果,在主界面左滑或者右滑出现设置界面,能方便的进行各种操作.目前有大量的应用都在使用这一效果.如Evernote.Google+.Foursquare等,国内的豌豆夹,人人,360手机助手等都使用SlidingMenu的界面方案. 项目下载地址:http://pan.baidu.com/s/1hq7NQmC Slidi

【Android】SlidingMenu属性详解

简单记下属性. SlidingMenu 常用属性介绍: menu.setMode(SlidingMenu.LEFT);//设置左滑菜单 menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//设置滑动的屏幕范围,该设置为全屏区域都可以滑动 menu.setShadowDrawable(R.drawable.shadow);//设置阴影图片 menu.setShadowWidthRes(R.dimen.shadow_width);//设

Android SlidingMenu 使用详解

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/36677279 很多APP都有侧滑菜单的功能,部分APP左右都是侧滑菜单~SlidingMenu 这个开源项目可以很好帮助我们实现侧滑功能,如果对SlidingMenu 还不是很了解的童鞋,可以参考下本篇博客.将侧滑菜单引入项目的方式很多中,本博客先通过例子介绍各种引入方式,然后给大家展示个实例:主布局ViewPager,左右各一个侧滑菜单的用法,差不多已经能满足大部分应用的需求

css动画-animation各个属性详解(转)

CSS3的animation很容易就能实现各种酷炫的动画,虽然看到别人的成果图会觉得很难,但是如果掌握好各种动画属性,做好酷炫吊炸天的动画都不在话下,好,切入正题. 一.动画属性: 动画属性包括:①animation-name,②animation-duration,③animation-timing-function, 以下是各属性详解: 1.animation-name:指定要绑定到选择器的关键帧的名称. 2.animation-duration:定义动画完成一个周期需要多少秒或毫秒 3.a

jQuery Event.which 属性详解

jQuery Event.which 属性详解 which属性用于返回触发当前事件时按下的键盘按键或鼠标按钮. 对于键盘和鼠标事件,该属性用于确定你按下的是哪一个键盘按键或鼠标按钮. which属性对DOM原生的event.keyCode和event.charCode进行了标准化. 适用的事件类型主要有键盘事件:keypress.keydown.keyup,以及鼠标事件:mouseup.mousedown. 该属性属于jQuery的Event对象(实例). 语法 jQuery 1.1.3 新增该

WPF依赖属性详解

WPF依赖属性详解 WPF 依赖属性 英文译为 Dependency Properties,是WPF引入的一种新类型的属性,在WPF中有着极为广泛的应用,在WPF中对于WPF Dependency Properties 的使用贯穿样式的使用,数据绑定,动画等等,在刚刚接触Dependency Properties的时候可能觉得有些奇怪,但是,当你了解他要解决的问题的时候,你可能就不觉得奇怪了.Dependency Properties第一个要解决的问题就是控件的属性共享问题,由于大部分的WPF控

Hibernate fetch属性详解

主要参考 :http://4045060.blog.51cto.com/4035060/1088025 一.hibernate抓取策略(单端代理的批量抓取fetch=select(默认)/join) 1)保持默认,同fetch="select" <many-to-one name="group" column="group_id" fetch="select" /> 另外发送一条select语句抓取当前对象关联实体

MWPhotoBrowser 属性详解 和代理解释

--------0.MWPhoto简单属性解释---------------- MWPhoto *photo = [MWPhoto photoWithURL:[NSURL URLWithString:@"http://farm4.static.flickr.com/3629/3339128908_7aecabc34b.jpg"]]; photo.caption = @"在将photo添加到数组中时,可以在这里设置标题名字"; photo = [MWPhotophot

Android textAppearance的属性设置及TextView属性详解

textAppearance的属性设置 android:textAppearance="?android:attr/textAppearanceSmall" android:textAppearance="?android:attr/textAppearanceMedium" android:textAppearance="?android:attr/textAppearanceLarge" TextView属性详解 android:autoLi