Android Studio - XML编辑器自动完成功能不支持库

时间:2015-06-06 15:33:00

标签: android android-studio autocomplete

我刚开始使用新的android.support.design库。当使用XML编辑器中的任何小部件时,我停止获取XML自动完成建议!

例如,

<android.support.design.widget.CoordinatorLayout
    android:id="@+id/header_root"
    android:layout_width="match_parent"
    android:layout_height="200dp">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/primary_dark" />

    <android.support.design.widget.FloatingActionButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|right"
        android:src="@drawable/ic_action_add"
        android:layout_marginLeft="16dp"
        android:layout_marginRight="16dp"
        android:layout_marginTop="56dp"
        app:fabSize="normal"
        app:layout_anchor="@id/header_root"
        app:layout_anchorGravity="bottom|right|end" />

</android.support.design.widget.CoordinatorLayout>

没有任何标签会显示自动完成弹出窗口,就像我开始输入“android:i”时没有出现弹出窗口一样,我得到的唯一建议如下图所示。

enter image description here

我已经尝试清理我的项目,重新启动电脑,重新启动Android Studio ..没有任何工作!

26 个答案:

答案 0 :(得分:82)

我尝试了很多东西(重启Android Studio,PC,Invalidate Caches,Power Saver模式......)。

最后,从项目中删除 .idea 文件夹和所有 .iml 文件,重新启动Android Studio并重建gradle就可以了。 XML支持库中的自动完成功能正在重新开始。

从版本控制中检出文件或复制新项目中的所有源文件也可以解决问题。

答案 1 :(得分:27)

我通过使缓存无效并重新启动来获取自动填充建议。

档案 - &gt;无效缓存/重新启动... - &gt;选择“无效并重新启动”

答案 2 :(得分:19)

如果以上答案中的NONE有效...

只需导航到您的android studio安装目录,即

yourDrive:/.AndroidStudio3.3/system

删除缓存文件夹(如果正在运行,请先关闭android studio)。

然后再次启动Android Studio。完成。

PS 我正在使用android studio 3.3

答案 3 :(得分:5)

相同的问题出现在版本 3.2。中。解决方案是

Close Android Studio
Go to C:\Users\UserName\.android and rename the build-cache folder to build-cache.bak

Go to C:\Users\UserName\.AndroidStudio3.2\system and rename these folders

caches to caches.bak

compiler to compiler.bak

compile-server to compile-server.bak

conversion to conversion.bak

external_build_system to external_build_system.bak

frameworks to frameworks.bak

gradle to gradle.bak

resource_folder_cache to resource_folder_cache.bak

Open the Android Studio and open your project again.

答案 4 :(得分:3)

Santanu Sur的答案对我有用!但是在Windows中,我在%USERNAME%/。AndroidStudio3.4 %USERNAME%/。AndroidStudio3.3

中找到了这些文件夹

我删除了这两个文件夹,最终效果很好。

答案 5 :(得分:2)

我遇到只有EditText标签被破坏的情况。我删除了 .idea 文件夹和所有 .iml ,使缓存失效并重新启动...实际上有效的方法是删除标记并再次输入。真奇怪。

答案 6 :(得分:1)

删除库/应用程序支持/ AndroidStudio *文件夹和Invalidate Cache之后帮助了我。所有其他选项都不起作用。

答案 7 :(得分:1)

在我的情况下Code Completion没有出现建议,因为我的应用程序模块中缺少Gradle依赖项。

我在XML布局中使用android.support.design.widget.TabLayout,但我没有在应用程序模块中添加Design Support Library compile 'com.android.support:design:25.3.1' Gradle依赖项。

答案 8 :(得分:1)

如果您在2018年11月使用Android Studio 3.2.1遇到此问题,则应尝试将其降级到3.1.4。

使用3.2.1时,我尝试了所有答案,但均不起作用,但是降级至3.1.4并执行了 Invalidate Caches / Restart (无效缓存/重新启动)后,效果很好。

答案 9 :(得分:1)

一种可能性是在android studio中检查power mode。转到File > Power mode并检查它是否打开。 如果启用,您也将不会得到任何建议。要获得建议,必须关闭它。

如果它对您不起作用,则应重置Android Studio,这将为您设置默认配置。 为此,找出.AndroidStudioBeta.AndroidStudio文件夹并删除它们,然后重新启动android studio。通常,您会将这个文件夹放入users\[user name]\.AndroidStudio3.3

然后告诉我是否有帮助。祝您编码愉快!!

答案 10 :(得分:1)

如果以上方法均无效...

只需导航到您的android studio安装目录,即

yourDrive:/。AndroidStudio3.4 / system

如果正在运行,请先关闭android studio。

然后删除系统中的缓存文件夹

然后再次启动Android Studio。完成。

我正在使用android studio 3.4

答案 11 :(得分:0)

我的问题是我试图在 res/xml 内的 xml 布局文件上自动完成。自动完成不适用于布局文件。将 xml 文件移动到 res/layout 使自动完成再次工作。

答案 12 :(得分:0)

我尝试将“ Compile SDK版本”从29降级到28,效果很好

答案 13 :(得分:0)

我只是尝试等待 10 秒钟,然后出现了自动完成建议(使用 Android Studio 4.2),看来 xml 只需要一些时间来解决它们。
而且我的电脑并不慢。< /p>

答案 14 :(得分:0)

build.gradle(模块:应用程序)中更改为较旧的版本-确保是Gradle Script下的版本,而不是build.gradle(项目:您的项目)。获取XML自动完成功能建议后,更改为当前版本。

答案 15 :(得分:0)

我也遇到了这个问题,这只发生在导入的模块类上。尝试了所有操作,例如删除.idea文件夹,power saver modeinvalidate cache and restart等。

最后更新模块的compileSdkVersionbuildToolsVersion以与应用程序模块匹配,从而解决了该问题。

我使用的是:

  compileSdkVersion 29
  buildToolsVersion '29.0.3'

答案 16 :(得分:0)

检查5种方法:

  1. 重新启动Android Studio

  2. 文件->使缓存无效/重新启动...->选择“无效并重新启动”

  3. 文件->开启省电模式并重新启动Android Studio

  4. 删除.idea文件夹。搜索* .iml文件并删除所有这些文件,然后使用方式2

答案 17 :(得分:0)

我分享我对 Android studio 4.2 的回答: 我不得不删除文件夹 C:\Users\Username\.gradle\caches

答案 18 :(得分:0)

最好的选择是为项目创建一个zip文件夹并更改其路径。(重新打开该项目,而不是打开它)。 这会做有需要的。

答案 19 :(得分:0)

删除android studio的完整文件夹`,然后重新启动。解决问题

  

driveLocation:/。AndroidStudio3.3

11可能与您情况不同

答案 20 :(得分:0)

几年来已经太晚了,但是我想提出一个答案,我想出了这个答案并为我工作。速度非常快,并且不需要像这里其他一些答案那样进行大量的重新配置,所以我想我应该添加它。

解决方案

注释gradle依赖项以获取xml属性,同步项目,然后取消注释它们并再次同步。对我来说,将这三个带有,然后不带注释的文件重新同步就足以使它们重新开始出现。

//implementation 'com.android.support:appcompat-v7:27.1.1'
//implementation 'com.android.support.constraint:constraint-layout:1.1.3'
//implementation 'com.android.support:design:27.1.1'

不要担心,如果第一步之后构建失败,那么应该在项目中已经拥有这些属性中的任何一个。另一个注意事项,由于某种原因,我之前输入的属性(在重新同步之前没有自动完成功能)需要重新输入。

答案 21 :(得分:0)

我尝试了无效的缓存/重新启动选项,但它对我不起作用。 对于Android Studio 3> 版本,请先检查以下内容:

compileSdkVersion
targetSdkVersion
buildToolsVersion

将这3个设置为最新版本,然后尝试同步项目并清理一次ReBuild。它将运行并显示XML编辑器的自动完成选项。

答案 22 :(得分:0)

档案 - &gt;无效缓存/重新启动... - &gt;选择“无效并重新启动”

并关闭省电模式它确实有效

答案 23 :(得分:0)

我也陷入了只有EditText标签被破坏的情况。解决方案在Setting&gt;中找到。编辑器&gt;一般&gt;自动导入,其中“编辑文本”列为自动完成时排除。通过选择删除它,然后单击减号。

答案 24 :(得分:0)

删除&#39; .androidStudioPreview1.X&#39;在我的主文件夹中。

答案 25 :(得分:-1)

对我有用的是重命名$ USERDIR / .AndroidStudio3.3 / system文件夹并重新启动AS。