Android开源侧拉菜单SlidingMenu Demo 配置与学习

本文介绍了如何配置和学习Android开源侧拉菜单SlidingMenu,包括从GitHub下载项目,导入IDE,解决依赖冲突,以及运行Demo时遇到的问题。文章还对比了SlidingMenu与NavigationDrawer的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载请注明出处:http://blog.youkuaiyun.com/zhoubin1992/article/details/46973483

前言

在Trinea的开源项目博文里
https://github.com/Trinea/android-open-project#%E4%B8%89menu
推荐了很多menu开源库。
首先给出Trinea里对SlidingMenu的介绍
滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕左右划出,支持菜单zoom、scale、slide up三种动画样式出现。与MenuDrawer相比而言,SlidingMenu支持菜单动画样式出现,MenuDrawer支持菜单view处于内容的上下层
项目地址:https://github.com/jfeinstein10/SlidingMenu
Demo地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example
APP示例:Foursquare, LinkedIn, Zappos, Rdio, Evernote Food, Plume, VLC for Android, ESPN ScoreCenter, MLS MatchDay, 9GAG, Wunderlist 2, The Verge, MTG Familiar, Mantano Reader, Falcon Pro (BETA), MW3 Barracks


对于侧拉导航菜单这块,最早SlidingMenu效果被广大应用采用,再后来google推出自己原生态的侧拉菜单NavigationDrawer,但是这个和ActionBar.Tab结合出现不少问题。现在Material Design 风格的导航抽屉应该是最推崇的吧。比如MaterialDrawerMaterial Design 风格的导航抽屉,提供简便且强大的定制功能。
项目地址:https://github.com/mikepenz/MaterialDrawer


SlidingMenu Demo 配置

虽然SlidingMenu已经过时,本着学习开源项目的态度学习SlidingMenu,当然最好的实践是学习他的demo,但是搭建demo时遇到些问题,这里把遇到的问题总结了下。给出正确的打开方式,哈哈。
1. 下载SlidingMenu
开源项目下载地址:
https://github.com/jfeinstein10/SlidingMenu
2. 下载ActionBarSherlock
开源项目下载地址:
https://github.com/JakeWharton/ActionBarSherlock
3. 解压并导入IDE
3. 1 把ActionBarSherlock-master.zip解压后包内的actionbarsherlock导入到eclipse中。
这里写图片描述
菜单第一项 File –Import –选择库所在位置 导入。
3. 2 把SlidingMenu-master.zip解压后包内的library导入eclipse中。
把actionbarsherlock和library设置为lib项目。
3. 3 在library中,添加actionbarsherlock库项目。因为library库用了actionbarsherlock库。
步骤 右键library——》properties——》Android——》Add选择actionbarsherlock库然后ok。
这里写图片描述
这里添加后会报错看LogCat会发现library和actionbarsherlock中的android-support-v4.jar版本不一致。
解决方法是将library项目的libs中的android-support-v4.jar删除。
4. 导入demo项目
把SlidingMenu-master.zip解压后包内的example导入eclipse中。这就是我们的demo项目。在example中,引入library库项目。
5. 修改library项目中的三个java文件。
把SlidingActivity.java、SlidingFragmentActivity.java、 SlidingPreferenceActivity.java里的

    SlidingActivity extends Activity

      SlidingFragmentActivity extends FragmentActivity

      SlidingPreferenceActivity extends PreferenceActivity

 修改为:

      SlidingActivity extends SherlockActivity

      SlidingFragmentActivity extends SherlockFragmentActivity

      SlidingPreferenceActivity extends SherlockPreferenceActivity 

然后三个文件各自导入
import com.actionbarsherlock.app.SherlockActivity;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.app.SherlockPreferenceActivity ;

大功告成,可以运行了。


小结

运行后会发现侧拉菜单不会覆盖主界面,而是顶出主界面。这是和NavigationDrawer不同的地方。
同时侧拉菜单打开时会覆盖ActionBar,而NavigationDrawer不会。
再者slidingmenu会不间断进行全局重绘,所以如果动画多了就卡。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值