eclipse 添加android-support-v7-appcompat包

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/gaopinqiang/article/details/76944745

我们在github上下载一些源码,经常看到里面有一些使用到android-support-v7-appcompat包的内容
在我们导入的时候就报错,运行不了。所以就想到底该怎么使用v7包。

1、直接将我们sdk里面的v7包拷贝到libs目录。(不可行)

例如我的sdk目录:
D:\Install_Program\Android-SDK\sdk\extras\android\support\v7\appcompat\libs
我们直接将里面的jar包拷贝到libs目录,编译的时候不会报错,但是运行的时候报错。
08-08 19:50:00.935: E/AndroidRuntime(1834): java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$styleable

这里写图片描述

2、我们使用v7包不能像v4包那样,直接放到libs目录,添加Build Path 就行。

我们import一个library的工程

这里写图片描述

记得把Copy projects into workspace勾上,免得影响原来的sdk中内容
这里写图片描述

把这个工程作为一个library ,src目录下是空的
这里写图片描述

3、我们再新建一个自己的工程 testv7

先把工程下的v4包移除掉,免得冲突

这里写图片描述

再把我们v7的library工程Add进来
这里写图片描述

这个时候我们运行,其实没有报之前的错误了,但是我们还是把v4 和v7都引进来
这里写图片描述

把order and Export里面的也上
这里写图片描述

4、到这个时候,运行还是报错,但报错的内容不一样

08-08 22:05:26.923: E/AndroidRuntime(20721): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.testv7/com.example.testv7.MainActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

提示我们要使用Theme.AppCompat这个主题
我们修改下AndroidManifest.xml 里面的主题
这里写图片描述

在xml文件使用
这里写图片描述

到现在我们就可以正常使用v包里面的内容了。

总结注意:
我们在github下载的demo,里面有用到AppCompatActivity,我们发现自己的v7包里面并没有,从网上下载的包含这个类的v7包,拿过了替换,发现运行的时候会报错。
猜测可能需要sdk对应的v4 v7包。
写这篇博客同时四川发生了地震,希望四川人民平安!

展开阅读全文

没有更多推荐了,返回首页