Android Studio - autouzupełnianie edytora XML nie działa z bibliotekami wsparcia

89

Właśnie zacząłem korzystać z nowej biblioteki android.support.design. Podczas korzystania z któregokolwiek z widżetów w edytorze XML przestaję otrzymywać sugestie dotyczące autouzupełniania XML!

Na przykład,

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

Żaden z tagów nie pokaże wyskakującego okienka autouzupełniania, na przykład kiedy zaczynam pisać "android: i" nie pojawia się żadne wyskakujące okienko, jedyna sugestia, jaką otrzymuję, jest pokazana na poniższym obrazku.

wprowadź opis obrazu tutaj

Próbowałem wyczyścić projekt, zrestartować komputer, zrestartować Android Studio… nic nie działa!

hitch.united
źródło
1
to samo tutaj, automatyczne uzupełnianie XML nie działa podczas korzystania z biblioteki niestandardowej
Damandeep,
Czy rozwiązałeś już ten problem?
dknchris
Niestety jeszcze nie. Biblioteka pomocy technicznej nadal się nie zapełnia.
autostop. Połączono
2
Powiązany raport o błędzie: Problem 61844: Autouzupełnianie przestało działać . Oznacz gwiazdką, aby rozwiązać problem.
Richard Le Mesurier,
1
@Varun haha ​​przynajmniej z radością możemy powiedzieć, że dzisiejszy AS jest o krok przed pierwszymi wersjami tamtego dnia
Richard Le Mesurier

Odpowiedzi:

121

Próbowałem wielu rzeczy (zrestartuj Android Studio, komputer, unieważnij pamięć podręczną, tryb oszczędzania energii, ...).

Wreszcie, usunięcie folderu .idea i wszystkich plików .iml z projektu, ponowne uruchomienie Android Studio i odbudowanie Gradle załatwiło sprawę . Autouzupełnianie w bibliotece obsługi XML znów działa.

Wyewidencjonowanie plików z Kontroli wersji lub skopiowanie wszystkich plików źródłowych w nowym projekcie również załatwi sprawę.

Marko
źródło
6
Typowe odpowiedzi na pytania na ten temat również mi nie pomogły. Zacząłem myśleć, że będę musiał to znieść, dopóki nie znalazłem twojej odpowiedzi. Dzięki!
Koncepcja dźwięku,
4
Dzięki za rozwiązanie. Musisz otworzyć projekt, przechodząc do samego folderu fizycznego. Wpis projektu na ekranie startowym Android Studio nie działał dla mnie.
raevilman
1
U mnie ta metoda zadziałała, ale po kilku dniach kodowania wydaje się, że zawsze wraca. Czy ktoś wie, czy istnieje sposób, aby dowiedzieć się, w jaki sposób ulega zepsuciu?
timothyjc
To samo tutaj ... w najnowszej wersji SDK 23, buildTools i wspierających bibliotekach, widziałem w dzienniku wydania, że ​​naprawili pewne problemy z tym, miejmy nadzieję, że naprawiono ... :)
Marko
nie działa. Skorzystaj z tego rozwiązania, działa dobrze stackoverflow.com/a/54007742/4373587
Riyaz Parasara
141

Jeśli NONEz powyższych odpowiedzi zadziałało, ...

Po prostu przejdź do katalogu instalacyjnego Android Studio, tj.

yourDrive:/.AndroidStudio3.3/system

i USUŃ FOLDER CACHE (najpierw zamknij Android Studio, jeśli jest uruchomione).

Następnie ponownie uruchom Android Studio. Gotowe .

PS Używam Android Studio 4.0

Santanu Sur
źródło
dla mnie, usunięcie całego folderu .AndroidStudio3.3 załatwiło sprawę. Myślę, że podczas importu coś się pognębiło.
Angel Koh
2
Działa również na Androida 3.6.
Abduhafiz
1
Dziękuję bardzo @Santanu Sur, działa również na Androida 3.6.2.
Rovinsan
1
C: \ Users \ your_user_name \ .AndroidStudio3.6 \ system
Gilian Marques
To zadziałało dla mnie, a także usunięcie folderu .idea
Luis Aguilar
37

Otrzymałem sugestie autouzupełniania, unieważniając pamięci podręczne i uruchamiając ponownie.

Plik -> Unieważnij pamięci podręczne / Uruchom ponownie ... -> Wybierz Unieważnij i uruchom ponownie

user4989692
źródło
Wygląda na to, że unieważnienie pamięci podręcznej / ponowne uruchomienie rozwiązuje wszystkie problemy w Android Studio!
MMG
32

Ten sam problem pojawił się w wersji 3.2. . Rozwiązaniem jest to

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.
DHRUV GAJWA
źródło
To faktycznie działa. Musimy tylko ponownie rozpocząć indeksowanie dla Android Studio. Podobnie jak resetowanie indeksu
P Vartak
działa jak marzenie!! Dzięki, studio Android
resetuje
dzięki stary, na mnie zadziałało. jeśli ktoś napotka ten problem, polecam tę odpowiedź
Syed Usama Ahmad
pracował na Android Studio 4. Unieważnianie, restartowanie i usuwanie pamięci podręcznych nie działało i po chwili znowu napotkałem problem. ale to zadziałało. tnx.
Reza
24

Jeśli ŻADEN z powyższych nie zadziałał ...

Po prostu przejdź do katalogu instalacyjnego Android Studio, tj.

yourDrive: /. AndroidStudio3.4 / system

najpierw zamknij Android Studio, jeśli jest uruchomione.

następnie usuń folder pamięci podręcznej w systemie

Następnie ponownie uruchom Android Studio. Gotowe.

Używam Android Studio 3.4

gourav singhal
źródło
Naprawdę pomocne, ale najpierw wypróbuj następujące opcje, a następnie wypróbuj jedną z nich.
Shahid Ahmad
Działał doskonale. Teraz nawet poprawnie pokazuje zasoby jako sugestie
Azizjon Kholmatov
Próbowałem wszystkiego, ale nic nie działało. Ta odpowiedź jawi się jako zbawiciel.
Sudarshan
4

Odpowiedź Santanu Sur działa dla mnie! Ale w Windows znalazłem te foldery w % USERNAME% /. AndroidStudio3.4 lub % USERNAME% /. AndroidStudio3.3

Usunąłem te dwa foldery i wreszcie działało dobrze.

jordiz
źródło
1
Działało idealnie, ale usuń tylko folder pamięci podręcznych w [Użytkownicy> Nazwa użytkownika> .AndroidStudio3.5> system].
Chirag Prajapati
2

Znalazłem się w sytuacji, w której EditTextzepsuty był tylko tag. Usunąłem .idea folder i wszystkie .iml , unieważnione pamięć podręczną i ponownie ... Co faktycznie przepracowanych było usunąć znak i wpisać go ponownie. Naprawdę dziwne.

Julio Rodrigues
źródło
dlaczego ważne jest, aby usunąć folder .idea jaka jest logika
blackHawk
więc musieliśmy sprawdzić, czy problem istnieje we wszystkich miejscach, czy w jednym pliku / w określonych plikach, a następnie powinniśmy sprawdzić uszkodzony kod układu
Blue_Alien
2

Usunięcie folderu Library / Application Support / AndroidStudio * i Invalidate Cache po tym pomogło. Wszystkie inne opcje nie działały.

jauser
źródło
2

Kilka lat za późno, ale chciałem odpowiedzieć na to pytanie, które odkryłem i pracowałem dla mnie. Było to bardzo szybkie i nie wymagało wiele rekonfiguracji, tak jak niektóre inne odpowiedzi tutaj, więc pomyślałem, że je dodam.

Rozwiązanie

Skomentuj zależności gradle dla atrybutów xml, zsynchronizuj projekt, a następnie cofnij komentarz i zsynchronizuj go ponownie. Dla mnie ponowne zsynchronizowanie tych trzech z komentarzami, a następnie bez nich, wystarczyło, aby ponownie zaczęli pojawiać się.

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

I nie martw się, jeśli twoja kompilacja się nie powiedzie po pierwszym kroku, powinna, jeśli masz już któryś z tych atrybutów w swoim projekcie. Inna uwaga, atrybuty, które wcześniej wstawiłem (bez autouzupełniania przed ponowną synchronizacją) musiały zostać ponownie wprowadzone z jakiegoś powodu.

Andrea deCandia
źródło
1

W moim przypadku sugestie dotyczące uzupełniania kodu nie pojawiały się, ponieważ w module mojej aplikacji brakowało zależności Gradle.

Używałem android.support.design.widget.TabLayoutw moim układzie XML, ale nie dodałem compile 'com.android.support:design:25.3.1'zależności Gradle biblioteki obsługi projektu w module aplikacji.

Sohail
źródło
1

Jeśli masz ten problem w listopadzie 2018 r. W Android Studio 3.2.1, powinieneś spróbować obniżyć go do wersji 3.1.4.

W przypadku wersji 3.2.1 wypróbowałem każdą z tych odpowiedzi i nie zadziałało, ale po obniżeniu wersji do wersji 3.1.4 i wykonaniu funkcji Invalidate Caches / Restart działało dobrze.

Tincho825
źródło
1

Próbowałem z Nieprawidłową pamięcią podręczną / opcją restartu , ale to nie zadziałało. W przypadku wersji Android Studio 3> najpierw sprawdź następujące elementy:

compileSdkVersion
targetSdkVersion
buildToolsVersion

Ustaw te 3 na najnowszą wersję, a następnie spróbuj zsynchronizować projekt i wyczyść, ponownie zbuduj raz. Będzie działać i wyświetlać opcje autouzupełniania edytora XML.

amit pandya
źródło
1
Tak. Pracuj dla mnie z biblioteką Androidx
Thomas VJ
1

Usuń cały folder `` studia Android, a następnie uruchom go ponownie. Rozwiąż problem

driveLocation: /. AndroidStudio3.3

.AndroidStudio3.3 w Twoim przypadku może być inny

Suraj Bahadur
źródło
@ApilPokharel Great
Suraj Bahadur
1

Jedną z możliwości jest sprawdzenie power modew studio Android. Przejdź do File > Power modei sprawdź, czy jest włączony lub wyłączony. Jeśli jest włączona, również nie otrzymasz żadnych sugestii. Aby uzyskać sugestie, musi być wyłączone.

Jeśli to nie zadziała, zresetuj swoje studio Android, które ustawi domyślną konfigurację. W tym celu znajdź .AndroidStudioBetalub .AndroidStudiofolder i usuń je i uruchom ponownie studio Android. Ogólnie rzecz biorąc, dostaniesz ten folder do users\[user name]\.AndroidStudio3.3.

Daj mi znać, jeśli to ci pomoże. Miłego kodowania…!

realpranav
źródło
0

Rozwiązany przez usunięcie „.androidStudioPreview1.X” w moim folderze domowym.

poopaou
źródło
0

Ja też znalazłem się w sytuacji, w której tylko tag EditText został uszkodzony. Rozwiązanie zostało znalezione w Ustawienia> Edytor> Ogólne> Automatyczny import, gdzie Edytuj tekst został wymieniony jako wykluczony z automatycznego uzupełniania. Usuń to, zaznaczając i klikając znak minus.

nisha
źródło
0

Plik -> Unieważnij pamięci podręczne / Uruchom ponownie ... -> Wybierz Unieważnij i uruchom ponownie

i wyłącz tryb oszczędzania energii, to działa

lllllllllllllll
źródło
0

Najlepszą opcją jest utworzenie folderu zip projektu i zmiana jego ścieżki (Zmień lokalizację tego projektu niż otwórz go). To wystarczy.

Rohit Lalwani
źródło
0

Sprawdź 5 sposobów:

  1. Uruchom ponownie Android Studio

  2. Plik -> Unieważnij pamięci podręczne / Uruchom ponownie ... -> Wybierz Unieważnij i uruchom ponownie

  3. Plik -> wyłącz tryb oszczędzania energii i uruchom ponownie Android Studio

  4. Usuń folder .idea. Wyszukaj pliki * .iml i usuń je wszystkie i użyj sposobu numer 2

Rasoul Miri
źródło
0

Ja również stanąłem przed tym problemem i działo się to tylko na zaimportowanej klasie modułu. Próbowaliśmy wszystko jak usuwanie .ideafolderu power saver mode, invalidate cache and restartitp

Ostatecznie aktualizacja compileSdkVersioni buildToolsVersiondopasowanie modułu do modułu aplikacji rozwiązały problem.

W moim przypadku używałem:

  compileSdkVersion 29
  buildToolsVersion '29.0.3'
Rishabh Sagar
źródło
0

Zmień na starszą wersję w build.gradle (moduł: aplikacja) -Upewnij się, że jest to wersja pod Gradle Script, a NIE build.gradle (projekt: twój projekt). Po otrzymaniu sugestii autouzupełniania XML zmień na bieżącą wersję.

Ankit Gupta
źródło
0

Próbuję obniżyć wersję „Kompiluj SDK” z 29 do 28 i działa dobrze

fahrizal89
źródło
-1

To, co zadziałało, to zmiana nazwy folderu $ USERDIR / .AndroidStudio3.3 / system i ponowne uruchomienie AS.

smk
źródło