项目引入android-support-v7-appcompat遇到的问题,no resource found that matches the given name 'android:Theme.AppCompat.Light'

时间:2022-12-22 21:18:01

一、问题

  今天准备使用v7包中的ToolBar来用,但是在styles.xml中引入Theme.AppCompat.Light的时候,报错“no resource found that matches the given name 'android:Theme.AppCompat.Light'”。

二、解决

  1、首先搜索了对应的报错,有很多回答需要导入android-support-v7-appcompat包,引入了几次,还是没有效果。终于功夫不负有心人,偶然看到一个博客中提到,需要将工程和android-support-v7-appcompat放在同一个盘符下,拷贝对应的android-support-v7-appcompat到同一个盘符下,居然可以引入到项目中了。

    感谢这篇博客的博主: Theme.AppCompat.Light无法找到问题

  2、但是还是有问题,Import到eclipse中的android-support-v7-appcompat前面有一个红色的叹号。我的工程中,也找不到R.java这个自动生成的文件。发现虽然成功引入到我的项目中,但是android-support-v7-appcompat是有错误的。奇了个怪了,怎么会这样?继续找原因吧。

  3、网上说编译的版本有问题,需要选中21以上的版本编译:右键你导入的android-support-v7-appcompat—>properties—>选择左侧栏Android—>在project bulid target中选择api21以上的—>clean即可。

  4、呵呵,终于叹号消失了,出现了红红的叉。我了个叉,怎么会有编译错误。不过可以看到红叉的路径,在res/values/v23中的xml文件中,里面有找不到的resource。看一下sdk manager,我的Android Supprot Library是23.1.1,但是只下载了21版本的SDK,我刚刚选的android-support-v7-appcompat也是21版本。看了一下对应的style名称,用不到,干干脆脆的删掉对应的xml文件,android-support-v7-appcompat编译成功。

  5、clean一下我的项目,编译成功,R.java出现了。

  6、哈哈哈,写个博客,庆祝一下。希望对大家有用。