我想弄明白为什么我的android工作室不能正确识别appcompatv7库。下面的import语句显示为灰色,并表示support.v7.app没有包。下面是我的活动文件:
import android.support.v7.app.AppCompatActivity;
public class XApplicationActivity extends AppCompatActivity
我的体格等级:
compile "com.android.support:appcompat-v7:22.0.0"
compile "com.android.support:support-annotations:$ANDROID_SUPPORT_VERSION"
compile "com.android.support:support-v4:$ANDROID_SUPPORT_VERSION"
我的项目设置:
minSdkVersion = 14
targetSdkVersion = 21
compileSdkVersion = 21
buildToolsVersion = "22.0.1"
所以我真的很困惑,为什么这仍然是给我的问题。我已经尝试过的事情:
清理/重建项目
使缓存失效并重新启动
检查了十亿次以确保安装了支持库(我绝对安装了最新的支持库和库)
有人知道有什么办法吗?这花了我很多时间,真的很令人沮丧。
26条答案
按热度按时间izkcnapc1#
最好的解决方案肯定是转到“文件”>“使缓存无效并重新启动”
然后在对话框菜单中。。。单击作废缓存并重新启动。等一分钟,或者不管需要多长时间来重置你的项目,那么你应该是好的。
我应该注意到,我还遇到了引用gradle中的compileonly库中的资源文件或“r”文件的问题(i、 e.compileonly library>res>referenced xml file)我停止在java代码中引用这个文件,它帮助了我。所以厌倦了你引用文件的地方。
bprjcwpo2#
hi3rlvi23#
我刚刚评论了它,并使用了androidx,现在它的工作都很好!
p8ekf7hl4#
对我来说,以下代码运行良好:
使用(xml文件):
fjaof16o5#
包括导入androidx.appcompat.app.appcompat活动;在mainactivity.java中使用其他导入语句。这看起来像:
这解决了我的问题
ncgqoxb06#
缓存失效后,从
到
为我工作。
xn1cxnb47#
如果给定的解决方案不起作用,那么创建一个以“kotlin”为语言的新项目,即使您的工作是在java上。然后将新项目的“main”文件夹替换为旧项目的“main”文件夹。
rjee0c158#
背景信息:
我的ide
第一个解决方案:再次导入项目,不同意升级android gradle插件。
第二种解决方案:您的文件应该包含这些片段。
内部版本.gradle:
要么按照ide的建议将gradle版本升级到4.4,要么考虑在gradle/wrapper/gradle-wrapper.properties中使用这个版本
可选更改app/build.gradle中的buildtoolsversion:
app/build.gradle:注解掉依赖项,让构建失败(自动或触发)
app/build.gradle:再次在依赖项中添加注解。有人建议将它们从编译改为实现,但目前这只是一个警告问题。
项目重建后,导入语句不再灰显;尝试对类调用ctrl+h。但由于某些原因,这些类引用语句上的错误标记仍然存在。为了摆脱它们,我们需要隐藏并恢复项目树视图,或者关闭并重新打开项目。
最后就是这样了。
进一步阅读:
更新gradle
使用新的依赖项配置
如果你喜欢我的解决方案图片线索,你可以访问我的博客
rpppsulh9#
删除项目中隐藏的.idea文件夹。转到系统中的项目,单击ctrl+h它将可见,然后将其删除。现在重启你的android工作室。我会解决的。对我有用。
x6492ojm10#
问题可能是进口参考,
试着改变一下。发件人:
收件人:
py49o6xq11#
androidx用户
将您的MinSDK版本更改为api级别21。
这样地
minSdkVersion 21
或者用compileSdkVersion 28
也会改变targetSdkVersion
至targetSdkVersion 28
你会看到v7错误消失了。之后,如果您在创建工具栏或其他小部件时遇到问题。按alt+enter并为其创建方法。ia2d9nvy12#
文件->使缓存失效/重新启动对我有效。
cgh8pdjw13#
我有这些设置
'gradle.properties'
android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidXandroid.enableJetifier=true
最好使用androidx库。所以我将所有导入都改为androidx库并编译了项目。访问http://developer.android.com/jetpack/androidx
供参考。wfauudbj14#
对我来说,即使升级到
appcompat-v7:22.1.0
,其中AppCompatActivty
是补充说,这个问题没有解决我,android工作室是给同样的问题无法解析符号“appcompatactivity”
有时清除androidstudio缓存会有所帮助。
在androidstudio中,我刚刚清除了缓存并用以下选项重新启动--
文件->使缓存失效/重新启动
kse8i1jr15#
更换
使用import androidx.appcompat.app.appcompat活动