RossWeatherMap天气地图项目中踩的雷(二):导入Support-v7-appcompact相关问题汇总
来源:互联网 发布:线切割3b编程软件 编辑:程序博客网 时间:2024/06/07 06:23
- 开发环境:Eclipse
- JDK版本:1.7
- Android版本:21
在天气地图界面上用到了ActionBarDrawerToggle控件来实现侧滑菜单,因此需要导入support-v7-appcompact库。由此引发了一大堆的问题。
首先来讲下正确的使用support-v7-appcompact库的方法。
第一步当然是使用Android SDK Manager下载support包啦。
第二步是导入support-v7-appcompact工程到你的workspace。Import->General->Existing Project Into Workspace。工程在你安装adt文件夹下sdk->extras->android->support->v7->appcompact。导入时一定不要忘了勾选copy projects into workspace。
第三步将support-v7-appcompact设置为library。在工程文件夹上右键property->android->Library勾选Is Library,然后apply->OK。
第四步在自己的工程中引用support-v7-appcompact library。在工程文件夹上右键property->android->Library->add,选择support-v7-appcompact library,然后apply->OK。
做完以上工作后就可以使用support-v7-appcompact包里的内容了。
看起来很简单,但是实际操作中毫无疑问会出现各种各样的问题。下面来具体说说需要注意的点。
首先是导入完support-v7-appcompact包之后出现的各种报错信息。
- error: Error retrieving parent for item: No resource found that matches the given name ‘android:Widget.Material.ActionButton’.
这种一般是工程target SDK version低于21导致的。support-v7-appcompact工程需要项目在version 21即android 5.0.1以上才可以使用。解决办法是工程文件夹右键property->android->Project Build Target选择高于21以上的版本。或者修改project.properties文件设置target=21及以上。当然你自己的工程也要设置在version 21以上。 - 然后可能有res/value-v22或者res/value-v23文件夹报错。这个是因为在设置主题时使用了对应版本的android 镜像里的内容导致的。解决办法是更新你的adt。下载高版本的android的System-image。或者如果你的软件不需要支持更高版本也可以直接删除工程里报错的res/value-v22或者v23文件夹。哈哈,简单粗暴。
- 然后有可能在你的工程中报错Unable to execute dex: Multiple dex files define。这个是重复引用了相同的jar包的缘故。删除你自己工程中的support-v4.jar以及support-v7-appcompact.jar。
- 还有一个极小几率出现的错误就是引用library出错。我们前面讲到必须在导入support-v7-appcompact工程时必须勾选copy projects into workspace就是避免出现这个错误。
再来讲一下错误的导入方法:
- 只导入support-v7-appcompact.jar到你的工程中。虽然不会有error但是运行时会报java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/appcompat/R$styleable。因为在使用控件时会用到support-v7-appcompact工程res文件夹下一些资源文件。
- properties->Java Build Path->Project添加support-v7-appcompact项目会报Could not find android-support-v7-appcompat.apk。原因是support-v7-appcompact项目无法单独通过编译,只能作为library 作为项目的外部引用。
以上是一些常见的导入support-v7-appcompact 相关的问题解决办法以及出现的原因。如果还有其他问题出现也欢迎大家向我反馈。完善这篇博文。
PS:大家还是转Android Studio+Grandle吧。官方好像已经放弃支持Eclipse了??o(╯□╰)o
- RossWeatherMap天气地图项目中踩的雷(二):导入Support-v7-appcompact相关问题汇总
- RossWeatherMap天气地图项目中踩的雷(一):Viewpager动态删除Fragment
- 解决导入android.support.v7的问题
- Android项目导入support v7包时遇到的各种问题
- 项目中导入ActionBar的android-support-v7-appcompat.jar包
- Android开发中android.support.v7的导入及引用
- Android项目使用support v7时遇到的各种问题
- Android项目使用support v7时遇到的各种问题
- Android项目使用support v7时遇到的各种问题
- Android项目使用support v7时遇到的各种问题
- Android项目使用support v7时遇到的问题
- Android项目使用support v7时遇到的各种问题
- Android项目使用support v7时遇到的各种问题
- eclipse中导入v7包 android-support-v7-appcompat 和 android-support-v7-recyclerview
- 导入android-support-v7出错的解决办法
- Eclipse中导入Android项目后缺失android-support-v4.jar或v7.jar
- 参考的开源项目中使用Android Support V4, V7, V13等,带来的一堆问题
- 关于android.support.v7.widget.RecyclerView包导入项目引发的BUG
- 接口的调用与使用
- World Wind Java开发 加载三维模型
- ArcGIS Runtime SDK for iOS(二) ---使用定时器绘制由point组成的polyLine,并显示位置坐标
- Git使用详细教程
- 解析网络视频真实地址
- RossWeatherMap天气地图项目中踩的雷(二):导入Support-v7-appcompact相关问题汇总
- PreferenceActivity
- mybatis写mapper xml文件注意事项
- SVN创建分支
- Linux 下安装Sublime
- 错误:Failed to locate or generate matching signing assets
- 计算广告——搜索广告技术初窥
- 漫谈iOS RSA非对称加密与解密
- 登录成功后跳回到原来页面