Android Studio-XML编辑器自动完成不使用支持库

yk9xbfzb  于 2022-09-21  发布在  Android
关注(0)|答案(30)|浏览(271)

我刚刚开始使用新的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”时没有弹出窗口一样,我得到的唯一建议是在下面的图片中显示的。

我试着清理我的项目,重新启动电脑,重新启动Android Studio。什么都不管用!

chhkpiq4

chhkpiq41#

如果上述答案中的一项有效,...

只需导航到您的Android Studio安装目录,即

yourDrive:/.AndroidStudio3.3/system

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

然后再次启动Android Studio。完成

附言我使用的是Android Studio 4.0

daolsyd0

daolsyd02#

我尝试了很多方法(重启Android Studio、PC、无效缓存、省电模式等)。

最后,从项目中删除**.IDEA文件夹和所有.iml**文件,重新启动Android Studio,并重新构建Gradle,就成功了。XML支持库中的自动完成功能再次正常工作。

从版本控制 checkout 文件或复制新项目中的所有源文件也可以做到这一点。

uujelgoq

uujelgoq3#

我的答案是在编译项目时切换到更低的SDK,我认为这是平台问题。我使用的是SDK 33。

Build.gradle的变化

compileSdk=32
0qx6xfy6

0qx6xfy64#

通过使缓存无效并重新启动,我重新获得了自动补全建议。

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

p5fdfcr1

p5fdfcr15#

同样的问题也出现在版本**3.2.**中。解决这个问题的办法是

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

Go to C:UsersUserName.AndroidStudio3.2system 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.
tkqqtvp1

tkqqtvp16#

如果上述方法都不奏效...

只需导航到您的Android Studio安装目录,即

YourDrive:/.androidStudio3.4/System

首先关闭Android工作室,如果正在运行的话。

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

然后再次启动Android Studio。好了。

我使用的是Android Studio 3.4

lzfw57am

lzfw57am7#

Santanu Sur答案适用于我!但在Windows中,我在**%USERNAME%/.androidStudio3.4%UserName%/.androidStudio3.3**中找到了这些文件夹

我删除了这两个文件夹,最后它工作得很好。

fruv7luv

fruv7luv8#

我试着把“编译SDK版本”从29个降级到28个,效果不错

332nm8kg

332nm8kg9#

删除库/应用程序支持/androidStudio*文件夹,并在那之后使缓存无效,这对我有帮助。所有其他选择都不起作用。

dfuffjeb

dfuffjeb10#

  • 为时已晚几年,但我想提交一份我弄清楚并为我工作的答案。它非常快,而且不需要像这里的其他一些答案那样进行大量的重新配置,所以我想我应该添加它。*

解决方案

注解XML属性的Gradle依赖项,同步项目,然后取消注解并再次同步。对我来说,在有评论和没有评论的情况下重新同步这三个人,足以让他们再次出现。

//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'

如果您的构建在第一步之后失败,请不要担心,如果您的项目中已经具有这些属性中的任何一个,则构建应该失败。另外,由于某些原因,我之前输入的属性(在重新同步之前没有自动完成)需要重新输入。

shyt4zoc

shyt4zoc11#

我遇到了只有EditText标签被破坏的情况。我已经删除了**.dea文件夹和所有.iml**,使缓存无效并重新启动...真正起作用的是擦除标签,然后再次输入。真的很奇怪。

6jjcrrmo

6jjcrrmo12#

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

最后,更新模块的compileSdkVersionbuildToolsVersion以匹配应用程序模块修复了该问题。

在我的案例中,我使用的是:

compileSdkVersion 29
  buildToolsVersion '29.0.3'
8ftvxx2r

8ftvxx2r13#

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

我在我的XML布局中使用了android.support.design.widget.TabLayout,但我没有在我的应用程序模块中添加设计支持库compile 'com.android.support:design:25.3.1' Gradle依赖项。

x6492ojm

x6492ojm14#

如果你在2018年11月的Android Studio 3.2.1中遇到了这个问题,你应该试着把它降级到3.1.4。

在3.2.1版本中,我尝试了所有这些答案,但都不起作用,但在我降级到3.1.4并执行无效缓存/重新启动后,它工作得很好。

scyqe7ek

scyqe7ek15#

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

compileSdkVersion
targetSdkVersion
buildToolsVersion

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

相关问题