SlidingMenu 异常问题处理
Posted IyangcLove
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SlidingMenu 异常问题处理相关的知识,希望对你有一定的参考价值。
这是从百度知道找到的··· http://zhidao.baidu.com/question/617493469883277732.html?fr=iks&word=.NoClassDefFoundError%3A+com.jeremyfeinstein.slidingmenu.lib.R%24layout&ie=gbk
1. 从网上获取最新的 SlidingMenu 源码的压缩包 获取地址:https://github.com/jfeinstein10/SlidingMenu 解压后的目录结构如下,其中的“Library”目录是我们下一步将要导入的项目: 2. 导入SlidingMenu-master /library 使用“菜单:File / Import / android / Existing Android Code Into Workspace”工具进行导入。 在“Import Projects”窗口中,root Directory 项选择“library”目录,Projects 中的“New Project Name”填写“SlidingMenu”的名称,并选中“Copy projects into workspace”(注:不要将 Library 目录直接拷贝到 workdspace 目录,否则会报错),然后点击“Finish”按钮完成操作。 3. 如果 sdk 有问题,重新选择合适的 sdk 4. 新建 Android 项目 使用“菜单:File / New/ Project / Android / Android Application Project”工具创建 Android 项目。 在“New Android Application”窗口中的 Application Name 里填入“SlidingMenuTest”,Target sdk 和 Compile With 项都选择“api 17:…”,其它都默认,直到完成。 5. 包含 Library (解决 java.lang.NoClassDefFoundError com.jeremyfeinstein.slidingmenu.lib.R 的错误) 打开“菜单:Project / Properties”窗口,在“Libaray”区域将前面导入的“SlidingMenu”项目添加进来。 6. 添加 jar 包 (解决java.lang.NoClassDefFoundError: android.support.v4.view.ViewConfigurationCompat 错误) 1)打开项目属性窗口,在 Libraries 标签页中通过“Add jars…”按钮添加本项目下的 “libs / android-support-v4.jar” jar 包 2)在 Order and Export 标签页中选中android-support-v4.jar 7. 创建 SlidingMenu 对象 修改 MainActivity.java 文件如下: Source code package com.example.slidingmenutest ; import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu ; import android.os.Bundle ; import android.app.Activity ; import android.view.Menu ; public class MainActivity extends Activity @Override protected void onCreate ( Bundle savedInstanceState ) super . onCreate ( savedInstanceState ) ; setContentView ( R. layout . activity_main ) ; /*** 初始化侧滑菜单 Begin ***/ SlidingMenu menu = new SlidingMenu ( this ) ; menu. setMode ( SlidingMenu. LEFT ) ; menu. setTouchModeAbove ( SlidingMenu. TOUCHMODE_FULLSCREEN ) ; menu. setShadowWidthRes ( R. dimen . shadow_width ) ; // 1) menu. setShadowDrawable ( R. drawable . shadow ) ; // 2) menu. setBehindOffsetRes ( R. dimen . slidingmenu_offset ) ; // 3) menu. setFadeDegree ( 0.35f ) ; menu. attachToActivity ( this , SlidingMenu. SLIDING_CONTENT ) ; menu. setMenu ( R. layout . activity_main ) ; // 4) /*** 初始化侧滑菜单 end ***/ @Override public boolean onCreateOptionsMenu ( Menu menu ) // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater ( ) . inflate ( R. menu . main , menu ) ; return true ; 以上代码中红色是要注意的地方。修改完成后,将出现 4 个错误,按照一下方法修复错误: 1)menu.setShadowWidthRes(R.dimen. shadow_width) 处的错误修复 在 res/values/dimens.xml 中添加: Source code <dimen name = "shadow_width" > 15dp </dimen > 2)menu.setShadowDrawable(R.drawable. shadow)处的错误修复 新建 res/drawable/shadow.xml 文件(没有“drawable”目录的自行添加): Source code <?xml version = "1.0" encoding = "utf-8" ?> <shape xmlns:android = "http://schemas.android.com/apk/res/android" > <gradient android:endColor = "#33000000" android:centerColor = "#11000000" android:startColor = "#00000000" /> </shape > 3)menu.setBehindOffsetRes(R.dimen.slidingmenu_offset )处的错误修复 在 res/values/dimens.xml 中添加: Source code <dimen name = "slidingmenu_offset" > 60dp </dimen > 4)menu.setMenu(R.layout. frame_menu)处的错误修复 添加名为 MenuActivity 的 Android Activity: 8. 编译 SlidingMenu 项目 编译 SLidingMenu,生成 bin /slidingmenu.jar 文件。 9. 编译并运行 SlidingMenuTest 项目 clear SlidingMenuTest 项目,并重新编译 SlidingMenuTest 项目,然后选择合适的模拟器或真机运行即可。
以上是关于SlidingMenu 异常问题处理的主要内容,如果未能解决你的问题,请参考以下文章
Android自定义ViewGroup打造各种风格的SlidingMenu
Android自己定义ViewGroup打造各种风格的SlidingMenu