zoukankan      html  css  js  c++  java
  • 移植SlidingMenu Android library,和安装example出现的问题解决

    很多项目都用到类似左侧滑动菜单的效果,比如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这个类并在声明前添加以下代码:

         
        1. import com.actionbarsherlock.app.SherlockFragmentActivity;  

        然后,将下面这个父类:

         

         
        1. public class SlidingFragmentActivity extends FragmentActivity implements SlidingActivityBase {  

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

         

         
        1. public class SlidingFragmentActivity extends SherlockFragmentActivity implements SlidingActivityBase {  

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

         

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

      • 原文:http://blog.csdn.net/zoeice/article/details/8721137

         

  • 相关阅读:
    一种查找中值的方法——Rank_Select
    VS 2008 下安装OpenCV 2.3.0 .【转载】
    【转】OpenCV HOGDescriptor 参数图解 .
    VLFeat——SIFT图像特征提取(VC++实现)【转载】
    KD Tree
    【转】让任务管理器画出正弦曲线
    VLFeatmean sift开源库【配置】【转载】
    《程序员求职成功路》之字符串__strtok函数相关理解【转载】
    堆排序
    opencv imread
  • 原文地址:https://www.cnblogs.com/zhangs1986/p/3660353.html
Copyright © 2011-2022 走看看