关注微信号:javalearns 随时随地学Java

或扫一扫

随时随地学Java

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

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

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

附csdn下载地址:

SlidingMenu:http://download.csdn.net/detail/lanximu/7922377

ActionBarsherlock:http://download.csdn.net/detail/lanximu/7922383

下面,介绍下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:

package com.jj.testslidingmenu;import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;import android.os.Bundle;import android.app.Activity;import android.view.KeyEvent;import android.view.Menu;public class MainActivity extends Activity {SlidingMenu slidingMenu;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);slidingMenu = new SlidingMenu(this);slidingMenu.setMode(SlidingMenu.LEFT);slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);slidingMenu.setBehindOffsetRes(R.dimen.slidingmenu_offset);slidingMenu.setMenu(R.layout.slidingmenu);slidingMenu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);}@Overridepublic boolean onKeyDown(int key, KeyEvent event){switch (key) {case KeyEvent.KEYCODE_MENU:slidingMenu.toggle(true);break;default:break;}return false;}}

XMl布局代码:layout/slidingmenu.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"     android:background="#ff999999"><com.jeremyfeinstein.slidingmenu.lib.SlidingMenu     android:id="@+id/slidingmenu"    android:layout_width="match_parent"    android:layout_height="match_parent"    >  <Button       android:layout_width="match_parent"      android:layout_height="wrap_content"      android:text = "click me"/>  </com.jeremyfeinstein.slidingmenu.lib.SlidingMenu></LinearLayout>

对于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();//动态判断自动关闭或开启SlidingMenumenu.showMenu();//显示SlidingMenumenu.showContent();//显示内容menu.setOnOpenListener(onOpenListener);//监听slidingmenu打开menu.setOnOpenedListener(onOpenedlistener);监听slidingmenu打开后menu.OnCloseListener(OnClosedListener);//监听slidingmenu关闭时事件menu.OnClosedListener(OnClosedListener);//监听slidingmenu关闭后事件左右都可以划出SlidingMenu菜单只需要设置menu.setMode(SlidingMenu.LEFT_RIGHT);属性,然后设置右侧菜单的布局文件menu.setSecondaryMenu(R.layout.menu_fram2);//设置右侧菜单menu.setSecondaryShadowDrawable(R.drawable.shadowright);//右侧菜单的阴影图片

关注微信号:javalearns 随时随地学Java

或扫一扫

随时随地学Java

更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. 不吹不黑!GitHub 上帮助人们学习编码的 12 个资源,错过血亏...
  3. Android移动热修复--Sophix
  4. 自己努力要学习啦(android的很多demo 总有你需要的)
  5. android menu.addIntentOptions 添加动态菜单
  6. Android中在toolbar中添加Menu菜单
  7. Android使用StaticLayout实现文本绘制自动换行
  8. Android(安卓)学习 之 使用ActivityGroup调用对应Activity的菜单
  9. SourceProvider.getJniDirectories

随机推荐

  1. Android— Eclipse运行Emulator时提示权
  2. Android(安卓)Java和JavaScript代码相互
  3. android中使用Intent在activity之间传递
  4. Android(安卓)WebView与Javascript交互
  5. android 模拟器中启用相机API支持
  6. android 开发谷歌地图的步骤
  7. android 5.0新特性学习--CardView
  8. Android(安卓)字体修改
  9. android中对服务的应用管理
  10. Android手动创建和解析Json