Brakujące style. Czy wybrano prawidłowy motyw dla tego układu?


163

Brakujące style. Czy wybrano prawidłowy motyw dla tego układu? Użyj pola kombi Motyw nad układem, aby wybrać inny układ lub naprawić odniesienia do stylu motywu. Nie udało się znaleźć stylu mapViewStylew bieżącym motywie.

Próbowałem wszystkich dostępnych rozwiązań, aby rozwiązać ten problem, ale wydaje się, że nic nie działa. Do pliku manifestu dołączyłem bibliotekę. Stworzyłem nawet style.xml, wybrałem również cel kompilacji Google Apis.

Czy ktoś może mi dać rozwiązanie?

oto mój plik xml :

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/AppTheme"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >


 <com.google.android.maps.MapView
     android:id="@+id/themap"
     style="@style/mapViewStyle"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
     android:apiKey="here i have my key"
     android:clickable="true"
     android:enabled="true" />

  </RelativeLayout>   

Oto mój fragment manifestu :

  <uses-library android:name="com.google.android.maps" />

    <activity
        android:name=".MainActivity"
        android:label="@string/title_activity_main" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".Second" />

    <activity android:name=".Third"  android:theme="@android:style/Theme.Black"/>
  </application>

tutaj jest mój plik style.xml

<resources>
    <style name="mapViewStyle" parent="@android:style/Theme.Black">
    </style>
</resources>

Na pewno to nie @style/AppThemetwoja zaginięcie?
Blundell

Dziękuję za odpowiedź, jestem nowy w programowaniu na Androida. To nie rozwiązało problemu. Dodałem AppTheme, ale nadal otrzymuję ten sam błąd. Zmieniłem motyw całej aplikacji na Theme.Light, żeby nie było więcej konfliktów. Ale problem nadal występuje !!! Nie mogę wymyślić, jak rozwiązać ten problem.

Kiedy uruchamiam aplikację, działa dobrze do drugiej czynności, ale w aktywności, która wyświetla mapy, wyświetla "Niestety twoja aplikacja została zatrzymana"

@DebeshAdhikari Jeśli Twój problem został rozwiązany, rozważ przyjęcie odpowiedzi, która pomogła Ci go rozwiązać
sachinjain024

Zmiana minSDKVersioni targetSdkVersionw build.gradlepliku pracował dla mnie.
rupinderjeet

Odpowiedzi:


152

W przypadku Android Studio (lub IntelliJ IDEA),

Jeśli wszystko wygląda dobrze w Twoim projekcie i nadal otrzymujesz błąd w swoich układach, spróbuj „Unieważnij pamięć podręczną i uruchom ponownie”.

Wypij kawę, podczas gdy Android Studio odtwarza pamięci podręczne i indeksy.

jak unieważnić pamięć podręczną i zrestartować


1
Dzięki. U mnie błąd wystąpił w IntelliJ IDEA po uaktualnieniu z 13.0.3 do 13.1.4 i to go naprawiło.
RenniePet

1
Dzięki, jestem nowy w Android Studio i szukając tej odpowiedzi, znalazłem dokładnie to, czego potrzebowałem.
Ali Ansari

Dziękuję, to rozwiązało mój problem w Android Studio 1.0 RC 2, Windows 7.
Sabuncu,

To zadziałało dla mnie, uruchomiłem Android Studio 1.0.2, Mac OS X 10.9
yiwei

U mnie działa na Android Studio na Macu.
mdgrech

151

Miałem ten sam problem i stwierdziłem, że jest to menu rozwijane Motyw u góry edytora układu graficznego. Zmieniłem z Holo na Theme, a wyświetlany układ i błąd zniknął.



19
Zmieniłem to z „Motyw aplikacji” na „Kompatybilność aplikacji” i to naprawiło to dla mnie. Przy okazji: kratki świetnie zapobiegają przedostawaniu się kociąt do kanalizacji.
B. Clay Shannon

Twoja odpowiedź działa dla mnie, sprawdzam mój motyw w stylu, a potem wybieram go w layoucie :)
Steve

Dziękuję Ci! Mi to pasuje. Wybrałem „Holo.Light.NoActionBar”
Andrew Grow

14

Zwykle robię to: a Gradle Clean, Rebuildi Sync all my Gradle files. Następnie restart uruchamiam Android Studio i przechodzę do:

Select Theme -> Project Themes -> AppTheme


7

Jeśli tworzymy zbyt wiele projektów za pomocą Android Studio, czasami pojawia się problem z renderowaniem. Nawet tworząc pustą aktywność, otrzymujemy taki błąd renderowania. Zamknij i uruchom ponownie Android Studio. Jeśli problem będzie się powtarzał, możeszUnieważnienie i ponowne uruchomienie pamięci podręcznej Android Studio

Mam nadzieję że to pomoże. Z reguły działa to podobnie, jeśli wszystko wygląda dobrze, a błąd nadal występuje, ponowne uruchomienie aplikacji zwykle rozwiązuje problem.


4

W moim przypadku problem wystąpił, gdy domyślne ustawienie wersji Androida w Projektancie było ustawione na „Preview N”. Zmieniono wersję Androida na „23” i powiadomienie o błędzie zniknęło.
Edytuj
I nie zapomnij odznaczyć „Automatycznie wybierz najlepszy”.


2

Miałem ten sam problem podczas korzystania z Android Studio 1.5.1.

Zostało to rozwiązane za pomocą Menedżera Android SDK i zaktualizowania biblioteki obsługi systemu Android , a także lokalnego repozytorium Maven dla bibliotek wsparcia .

wprowadź opis obrazu tutaj

Po zaktualizowaniu zestawu SDK i ponownym uruchomieniu Android Studio problem został rozwiązany.

Mam nadzieję, że pomoże to każdemu, kto ma ten sam problem po wypróbowaniu innych sugestii.


Nie wypróbowałem żadnej innej sugestii, przeszedłem od razu do tej i mój podgląd wyrenderowany bez błędów po zaktualizowaniu SDK i ponownym uruchomieniu Android Studio.
xpagesbeast

2

Rozwiązałem to, zmieniając „classpath” w „zależności” w pliku build.gradles.

Po prostu zmień:

dependencies {
    classpath 'com.android.tools.build:gradle:2.3.0-alpha2'

lub coś takiego, aby:

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.3'

1

Otrzymałem ten błąd po zastąpieniu stylu paska akcji w ten sposób. Zgubiłem też pasek akcji w podglądzie.

<style name="general_app_theme" parent="@style/Theme.AppCompat">
    <!-- for API level 11 -->
    <item name="android:actionBarStyle">@style/action_bar_style</item>

    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/action_bar_style</item>

</style>

<style name="action_bar_style" parent="@style/Widget.AppCompat.ActionBar">
    <!-- for API level 11 -->
    <item name="android:height">@dimen/action_bar_height</item>
    <item name="android:background">@color/action_bar_color</item>
    <item name="android:displayOptions">showTitle</item>

    <!-- Support library compatibility -->
    <item name="displayOptions">showTitle</item>
</style>

Tak więc problemem jest nadrzędność motywu przez mój zwyczaj. to jest powód, dla którego zmieniłem AppCompat (z „Project Themes”) na general_app_theme (z „Manifest Themes”). Teraz nie mam tego błędu i wrócił pasek akcji w podglądzie.


1

Spróbuj przełączyć motyw w widoku projektu na jedną z opcji w „Manifest Themes”. Zgaduję, że dzieje się tak, ponieważ dziedziczysz motyw z manifestu, aby obsługiwać wiele poziomów interfejsu API. I tak mi się udało.


1

W nawiązaniu do odpowiedzi udzielonej przez @Benno: Zamiast przechodzić do konkretnego motywu, możesz po prostu wybrać „DeviceDefault” z menu motywu. Powinno to wybrać motyw najbardziej zgodny z emulowanym urządzeniem.


1

Jeśli po wypróbowaniu wszystkich powyższych rozwiązań nadal masz problem ,, spróbuj zmodyfikować poziom interfejsu API, jak pokazano poniżej. Nieprawidłowy poziom interfejsu API może również powodować problem.

wprowadź opis obrazu tutaj


1

Można to naprawić, zmieniając motyw w styles.xml z Theme.AppCompat.Light.DarkActionBar na Base.Theme.AppCompat.Light.DarkActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

do

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

i wyczyść projekt . To na pewno pomoże.


0

Większość błędów w XML jest spowodowana nazwami, które nadałeś zasobom.

Obrazy przechowywane w folderze do rysowania muszą mieć odpowiednie nazwy. po prostu sprawdź te rzeczy:

  1. Czy są jakieś zduplikowane pliki? jeśli tak, usuń duplikaty. (Na przykład "image.jpg"i "image.png"nie są dozwolone w tym samym czasie. Nie pokaże żadnych błędów, ale czasami pokaże, że R.java nie może zostać rozwiązany)
  2. Czy nazwy plików zawierają duże litery? Jeśli tak, kliknij prawym przyciskiem myszy file-> refactor-> rename i zmień jego nazwę na wszystkie małe litery, bez myślników i dozwolone są tylko az i 0-9.

Tylko upewnij się, że powyższe przypadki.


0

Mam ten sam problem z moim niestandardowym motywem, w którym jako nadrzędny zastosowano Holo.Light. W szarym tekście Android Studio wskazuje, że brakuje niektórych atrybutów. Kiedy dodałem te brakujące atrybuty w następujący sposób, problemy z renderowaniem zniknęły -

    <item name="android:textEditSuggestionItemLayout"></item>
    <item name="android:textEditSuggestionContainerLayout"></item>
    <item name="android:textEditSuggestionHighlightStyle"></item>

Mimo że wprowadzili błędy w motywie mojego stylu, nie spowodowali problemów z renderowaniem projektów zajęć lub budowaniem mojej aplikacji.


1
Mówiłem za szybko - ekrany wyglądały dobrze; jednak otrzymuję komunikat „Nie znaleziono zasobu” dla linii kontenera i stylu ”. Bądźcie czujni.
Earl Allen

Najwyraźniej w motywie macierzystym android.'theme.Holo.Light brakuje tych atrybutów i nie mogę znaleźć dokumentacji, która by je uwzględnić. Rozwiązałem problem, przełączając się na motyw „android.theme.Holo”.
Earl Allen

0

Możesz po prostu usunąć ten błąd, zmieniając „Motyw aplikacji” i wybierając dowolny motyw, na przykład jasny. Ten błąd zostanie usunięty.


0

Mam ten sam problem.Wybranie motywu na inny w podglądzie może rozwiązać problem tymczasowy. Podobnie jak obraz

W końcu dowiedziałem się, że są AppThemei AppBaseThemew moim styles.xml. I AppThemema rodzica AppBaseTheme. AppBaseThemeMa rodzica jednego stylu systemu.

Każdy plik układu używa motywu AppTheme. Po prostu zmień AppThemerodzica na AppBaseThemerodzica. Rozwiązuje problem na stałe.


0

Wystarczy kliknąć przycisk „ AppTheme ” i wybrać „ Manifest Themes ”. Działa w większości przypadków.


0

U mnie występowało to w menu.xmlpliku, ponieważ używałem androida: Theme.Light jako mojego motywu, więc zrobiłem -

  1. Dodano nowy folder w katalogu res o nazwie values-v21.

  2. Dodano android: Theme.Material.Light jako AppTheme w styles.xml.


0

Jest już bardzo późno, ale chciałbym podzielić się moim doświadczeniem w tej samej sprawie. napotykam ten sam problem w Android Studio, próbowałem innego rozwiązania, które znalazłem w Internecie, ale nic nie działa, chyba że ODBUDUJĘ PROJEKT i to rozwiąże mój problem.

Mam nadzieję, że to zadziała również dla Ciebie.

Miłego kodowania.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.