很多项目都用到类似左侧滑动菜单的效果,比如facebook,evernote,VLC for android等等,这很酷

源代码可以从GitHub的https://github.com/jfeinstein10/slidingmenu上下载。

移植过程中会用到Actionbarsherlock这个项目,去http://actionbarsherlock.com/download.html下载。(两个下的都是最新版本)

步骤:

1.将下载的Actionbarssherlock中/library下的文件解压到workspace(你的项目目录),改项目名称为Actionbarssherlock,从eclipse中操作new->project->Android Project from Existing Code将项目添加进去,target改为api14以上。

2.将下载的slidingmenu中/library解压到workspace(你的项目目录),改名SlidingMenu,import该项目,右键->properties->android->api14以上。或者打开project.properties:target=Google Inc.:Google APIs:14或更高。

3.这样SlidingMenu就可以用在自己项目中了。让我们来运行例子。解压slidingmenu中/example。import该项目,设置api14或更高,并add你的SlidingMenu。运行看看效果。2.1以上的系统都可以运行。

虽然是开源项目,但使用过程中还是可能会出现各种问题:

一、修复SlidingMenu library project里出现的错误

  • Console error: Unable to resolve target ‘Google Inc.:Google APIs:16.

    Fix: 进入Properties检查Target sdk是否选择了 Google APIs.

  • List of errors: ACTION_POINTER_INDEX_MASK cannot be resolved android.
    HONEYCOMB cannot be resolved or is not a field
    LAYER_TYPE_HARDWARE cannot be resolved or is not a field
    LAYER_TYPE_NONE cannot be resolved or is not a field
    MATCH_PARENT cannot be resolved or is not a field
    The method getLayerType() is undefined for the type View
    The method setLayerType(int, null) is undefined for the type View

    Fix: 将manifest里面的min sdk version 改为你当前用到的sdk版本,7以上.

二、修复example project里出现的错误

    • Console error: Found 2 versions of android-support-v4.jar in the dependency list,but not all the versions are identical (check is based on SHA-1 only at this time). Jar mismatch! Fix your dependencies

      Fix: 这是由于jar包版本不一致导致的,检查SlidingMenu和Actionbarsherlock中的\libs文件夹里的哪个android-support-v4.jar版本比较新,用新的替换掉其中的老版本. 如果错误还是会出现,就clean项目并重启eclipse.

    • List of errors: The method getSupportActionBar() is undefined for the type BaseActivity
      The method getSupportMenuInflater() is undefined for the type BaseActivity
      The method onCreateOptionsMenu(Menu) of type BaseActivity must override or implement a supertype method
      The method onOptionsItemSelected(MenuItem) in the type Activity is not applicable for the arguments
      The method onOptionsItemSelected(MenuItem) of type BaseActivity must override or implement a supertype method
      The method onOptionsItemSelected(MenuItem) of type ResponsiveUIActivity must override or implement a supertype method

      Fix:打开SlidingMenu library project里SlidingFragmentActivity这个类并在声明前添加以下代码:

      import com.actionbarsherlock.app.SherlockFragmentActivity;

      然后,将下面这个父类:

      public class SlidingFragmentActivity extends FragmentActivity implements SlidingActivityBase {

      换成Actionbarsherlock里的另外一个父类:

      public class SlidingFragmentActivity extends SherlockFragmentActivity implements SlidingActivityBase {

      如果错误还是会出现,就clean项目并重启eclipse.

      没错误以后运行出下面效果:

转:移植SlidingMenu Android library,和安装example出现的问题解决的更多相关文章

  1. 移植SlidingMenu Android library,和安装example出现的问题解决

    很多项目都用到类似左侧滑动菜单的效果,比如facebook,evernote,VLC for android等等,这很酷 源代码可以从GitHub的https://github.com/jfeinst ...

  2. 将Unity3D游戏移植到Android平台上

    将Unity3D游戏移植到Android平台是一件很容易的事情,只需要在File->Build Settings中选择Android平台,然后点击Switch Platform并Build出ap ...

  3. android studio开发工具的android library打包文件(.aar)本地引用

    by 蔡建良 2014-5-13 关键点: 利用Gradle发布本地maven库支持android library 打包文件(*.aar) 的本地引用 开发环境: windows7 64位操作系统 a ...

  4. Windows下将ImageMagick移植到Android平台

    Windows下将ImageMagick移植到Android平台 原文链接  http://www.pedant.cn/2014/06/18/imagemagick-ported-android/ I ...

  5. React Native移植原生Android

    (一)前言 之前已经写过了有关React Native移植原生Android项目的文章,不过因为RN版本更新的原因吧,跟着以前的文章可能会出现一些问题,对于初学者来讲还是会有很多疑难的困惑的,而且官方 ...

  6. 【C++】GSL(GNU Scientific Library) 的安装及在 Visual Studio 2017 中的使用

    GSL 是 GNU 开发并维护的科学计算的库,其中包括: 复数 多项式的根 特殊函数 向量和矩阵 排列 排序 BLAS支持 线性代数 Eigensystems 快速傅立叶变换 正交 随机数 准随机序列 ...

  7. Android Library项目发布到JCenter最简单的配置方法

    前沿 网上的步骤看起来实在太麻烦,gituhb上偶然间看到的一个项目,经过实际验证确实可行.github连接:https://github.com/xiaopansky/android-library ...

  8. Android Library开发注意事项

    Android Library开发注意事项 App Module添加依赖Android Library时可以设置library的优先级, 在编译时,app按照library从低到高的优先级依次与每个l ...

  9. 【React Native开发】React Native移植原生Android项目(4)

    ),React Native技术交流4群(458982758),请不要反复加群!欢迎各位大牛,React Native技术爱好者加入交流!同一时候博客左側欢迎微信扫描关注订阅号,移动技术干货,精彩文章 ...

随机推荐

  1. 创建简单动画(一) --- 常规hud

    先说下当前我为处理动画的思路: (新手上路, 老司机轻喷,如果有更好的实现方法请大神指教 感恩戴德) #1. 分析动画构成 #2. 如果是位移动画则考虑使用BasicAnimation或者Keyfra ...

  2. 《C++ Primer》之重载操作符与转换(下)

    转换与类类型 可用一个实参调用的非 explicit 构造函数定义一个隐式转换.当提供了实参类型的对象而需要一个类类型的对象时,编译器将使用该转换.这种构造函数定义了到类类型的转换.除了定义到类类型的 ...

  3. 深入理解HTTP协议(转) 浏览器和服务器如何通信(HTTP协议)

    http协议学习系列 1. 基础概念篇 1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写.它的发展是万维网协会(World Wide Web C ...

  4. 如何在sharepoint里通过correlation id查找详细的错误信息

    Sharepoint里我们经常遇到这样的错误信息: 我们能通过下面的power shell 命令来查到详细的错误信息: $correlationid = "943e6e9c-b5d9-207 ...

  5. android网络开发之测试机连接到服务器上面

    1:本人使用Tomcat作为服务器软件,首先打开Tomcat.(可以在浏览器中输入http://www.127.0.0.1:8080/查看) 2:服务器后台使用Servelt开发,这里不再讲解. 3: ...

  6. ACboy needs your help again!

    ACboy needs your help again! Time Limit : 1000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Ja ...

  7. JAVA EE 运行环境配置(包含JAVA SE)

    JAVA EE 运行环境配置(包含JAVA SE) 1.下载并安装jre-7u7-windows-i586.exe (最新的JAVA运行环境) 2.下载并安装java_ee_sdk-6u4-jdk7- ...

  8. 调试minix内核

    调试的时候,要把电脑当作单片机来使用,故先需要添加串口,方便进行打印调试 http://wiki.minix3.org/doku.php?id=developersguide:serialout 1. ...

  9. 脚本添加crontab任务【转】

    今天朋友问,计划任务是用crontab -e来添加的,如何使用脚本来添加呢? 在执行crontab -e命令时,会在/var/spool/cron目录下创建一个文件,文件的名称是你当前的用户名,内容就 ...

  10. jquery新窗口打开链接

    第一种:下面的代码是针对m35ui这个样式下的a都是在新窗口打开    <script type="text/javascript">  jQuery(document ...