Android Studio - автозаповнення редактора XML не працює з бібліотеками підтримки


89

Я щойно почав користуватися новою бібліотекою 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 .. нічого не працює!


1
те саме тут, автозаповнення xml не працює під час користувальницької бібліотеки
Дамандіп

Ви вже вирішили цю проблему?
dknchris

На жаль, я ще цього не зробив. Бібліотека підтримки все ще не заповнюється.
hitch. Об’єднано

2
Звіт про помилку: Випуск 61844: Автозаповнення перестало працювати . Будь ласка, позначте зірочкою, щоб вони вирішили проблему.
Richard Le Mesurier

1
@Varun ха-ха, принаймні ми можемо із задоволенням сказати, що сьогоднішній AS стрибає і випереджає перші версії того часу
Річард Ле

Відповіді:


120

Я спробував багато речей (перезавантажте Android Studio, ПК, інвалідні кеші, режим економії енергії, ...).

Нарешті, видалення папки .idea та всіх файлів .iml з проекту, перезапуск Android Studio та відновлення Gradle зробили свою справу. Автозаповнення в бібліотеці підтримки XML знову працює.

Перевірка файлів з контролю версій або копіювання всіх вихідних файлів у новому проекті також зробить трюк.


6
Загальні відповіді на запитання щодо цього теж не спрацювали для мене. Я починав думати, що мені просто доведеться з цим терпіти, поки я не знайшов вашої відповіді. Дякую!
Концепція звуку

4
Дякую за рішення. Потрібно відкрити проект, переглянувши саму фізичну папку. Запис проекту на екрані запуску Android Studio для мене не спрацював.
raevilman

1
Цей метод спрацював у мене, але через кілька днів кодування він, здається, завжди повертається. Хтось знає, чи є спосіб дізнатись, як він стає пошкодженим?
timothyjc

Те саме і тут ... в останньому випуску SDK 23, buildTools та бібліотеках підтримки, я побачив у журналі випусків, що вони виправили деякі проблеми навколо цього, дозволяємо сподіватися, що це виправлено ... :)
Marko,

не працює. Будь ласка , використовуйте це рішення оборотний штраф stackoverflow.com/a/54007742/4373587
Riyaz Парашара

141

Якщо NONEз наведених відповідей спрацював, ...

Просто перейдіть до каталогу встановлення андроїд-студії, тобто

yourDrive:/.AndroidStudio3.3/system

та ВИДАЛІТЬ ПАПКУ КЕШУ (перша закрита андроїд-студія, якщо вона працює).

Потім знову запустіть Android Studio. Готово .

PS Я використовую android studio 4.0


для мене видалення всієї папки .AndroidStudio3.3 зробило свою справу. Я думаю, це зіпсувалося під час процесу імпорту.
Angel Koh

2
Працює і для Android 3.6.
Абдухафіз,

1
Велике спасибі @Santanu Sur, це працює і для Android 3.6.2.
Ровінсан

1
C: \ Users \ your_user_name \ .AndroidStudio3.6 \ system
Gilian Marques

Це спрацювало для мене, а також видалило папку .idea
Луїс Агілар,

37

Я отримав свої пропозиції щодо автозаповнення, скасувавши кеші та перезапустивши.

Файл -> Недійсні кеші / перезапуск ... -> Виберіть Недійсні та перезавантажте


Здається, скасування кеш-пам’яті / перезапуск вирішує всі проблеми в Android Studio!
MMG

32

Ця сама проблема виникла у версії 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.

Це насправді працює. Нам просто потрібно знову розпочати індексацію для android studio. Як скидання індексу
П Вартак

працює як шарм !! Дякуємо, андроїд-студія
скинула

дякую, чоловіче, це в мене спрацювало. якщо хтось стикається з цим питанням, я рекомендую цю відповідь
Сайед Усама Ахмад

працював в android studio 4. скасування, перезапуск та видалення кешів у мене не працювали, і через деякий час я знову зіткнувся з проблемою. але це спрацювало. tnx.
Реза

24

Якщо НІхто з перерахованого не працював ...

Просто перейдіть до каталогу встановлення андроїд-студії, тобто

yourDrive: /. AndroidStudio3.4 / system

перша закрита андроїд-студія, якщо вона працює.

потім видаліть папку кешу в системі

Потім знову запустіть Android Studio. Готово.

я використовую android studio 3.4


Дійсно корисно, але спершу спробуйте наступні варіанти, а потім спробуйте вище одного.
Шахід Ахмад,

Працював ідеально. Зараз навіть правильно відображаються ресурси як пропозиції
Азіджон Холматов,

Я спробував усе, але нічого не дав працювати. Ця відповідь постає як рятівник.
Сударшан

4

Відповідь Сантану-Сур працює для мене! Але в Windows я знайшов ці папки в % USERNAME% /. AndroidStudio3.4 або % USERNAME% /. AndroidStudio3.3

Я видалив ці дві папки, і це нарешті вдалось.


1
Працював ідеально, але видалити лише папку кешів у [Користувачі> Ім'я користувача> .AndroidStudio3.5> система].
Chirag Prajapati

2

Я потрапив у ситуацію, коли EditTextбув зламаний лише тег. Я видалив папку .idea та весь файл .iml , анулював кеш-пам’ять і перезапустив ... Що насправді вдалося видалити тег і ввести його знову. Дійсно дивно.


чому важливо видалити папку .idea, яка логіка
blackHawk,

отже, нам довелося перевірити, чи проблема існує в усіх місцях чи в одному файлі / у певних файлах, а потім перевірити непрацюючий код макета
Blue_Alien

2

Після цього мені допомогло видалення папки «Бібліотека / Підтримка програм / AndroidStudio *» та «Недійсний кеш». Усі інші варіанти не спрацювали.


2

На кілька років запізно, але я хотів надати відповідь на це, що я зрозумів і працював на мене. Це було дуже швидко і не вимагало багато переконфігурації, як це було в деяких інших відповідях тут, тому я думав, що додам це.

Рішення

Прокоментуйте залежності 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'

І не хвилюйтеся, якщо ваша збірка не вдасться після першого кроку, це має статися, якщо у вас вже є якийсь із цих атрибутів у вашому проекті. Ще одне зауваження: атрибути, які я раніше вводив (без автозавершення до повторної синхронізації), з якихось причин потрібно було повторно ввести.


1

У моєму випадку пропозиції щодо заповнення коду не з'являлися, оскільки в модулі мого додатка відсутня залежність Gradle.

Я використовував android.support.design.widget.TabLayoutу своєму XML-макеті, але я не додав compile 'com.android.support:design:25.3.1'залежність Gradle Library Design у свій модуль програми.


1

Якщо у вас виникла ця проблема в листопаді 2018 року з Android Studio 3.2.1, спробуйте знизити її до 3.1.4.

З 3.2.1 я спробував кожну з цих відповідей і не працював, але після того, як я знизився до 3.1.4 і зробив Недійсні кеші / перезапуск, він працював нормально.


1

Я спробував скористатися недійсним кешем / перезапуском, але це не спрацювало для мене. Для Android Studio 3> версії спочатку перевірте такі:

compileSdkVersion
targetSdkVersion
buildToolsVersion

Встановіть для останньої версії ці 3, а потім спробуйте синхронізувати проект і один раз очистити ReBuild. Це буде працювати і відображатиме параметри автозаповнення редактора XML.


1
Так. Робота для мене з бібліотекою androidx
Thomas VJ

1

Видаліть повну папку `android studio, а потім перезапустіть її. Вирішити проблему

Розташування диска: /. AndroidStudio3.3

.AndroidStudio3.3 у вашому випадку може бути іншим


@ApilPokharel Great
Suraj Bahadur

1

Однією з можливостей є реєстрація power modeв андроїд-студії. Перейдіть File > Power modeі перевірте, чи він увімкнений чи вимкнений Якщо він увімкнений, ви також не отримуватимете жодних пропозицій. Щоб отримувати пропозиції, його потрібно вимкнути.

Якщо у вас це не працює, вам слід скинути налаштування вашої студії Android, яка встановить для вас конфігурацію за замовчуванням. Для цього знайдіть .AndroidStudioBetaабо .AndroidStudioпапку та видаліть їх та перезапустіть android studio. Як правило, ви отримаєте цю папку users\[user name]\.AndroidStudio3.3.

Повідомте мене, якщо це вам тоді допоможе. Щасливого кодування ..!


0

Вирішено шляхом видалення '.androidStudioPreview1.X' у моїй домашній папці.


0

Я теж потрапив у ситуацію, коли був зламаний лише тег EditText. Рішення було знайдено в меню Налаштування> Редактор> Загальне> Автоматичний імпорт, де Редагування тексту було перераховано як виключене з автоматичного завершення. Видаліть це, вибравши і клацніть знак мінус.


0

Файл -> Недійсні кеші / перезапуск ... -> Виберіть Недійсні та перезавантажте

і режим енергозбереження працює


0

Найкращий варіант - створити zip-папку проекту та змінити його шлях (перенести цей проект, ніж відкрити). Це зробить необхідне.


0

Перевірте 5 способів:

  1. Перезапустіть Android Studio

  2. Файл -> Недійсні кеші / перезапуск ... -> Виберіть Недійсні та перезавантажте

  3. Файл -> увімкніть режим енергозбереження та перезапустіть Android Studio

  4. Видаліть папку .idea. Шукайте файли * .iml, видаляйте їх і використовуйте спосіб №2


0

Я теж стикався з цією проблемою, і це відбувалося лише в імпортованому класі модулів. Пробував все , як видалення .ideaпапки power saver mode, invalidate cache and restartі т.д.

Нарешті оновлення compileSdkVersionта buildToolsVersionмодуль, який відповідав модулю програми, вирішив проблему.

У моєму випадку я використовував:

  compileSdkVersion 29
  buildToolsVersion '29.0.3'

0

Перейдіть на стару версію в build.gradle (Модуль: додаток) - Переконайтеся, що вона є у розділі Gradle Script, і це НЕ build.gradle (Проект: yourproject). Після отримання пропозицій автозаповнення XML перейдіть на поточну версію.


0

Я намагаюся знизити "Компілювати версію SDK" з 29 до 28, і це працює добре


-1

Мені вдалося перейменувати системну папку $ USERDIR / .AndroidStudio3.3 / та перезапустити AS.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.