Не вдалось знайти такі класи: android.support.v7.internal.app.WindowDecorActionBar


114

Що викликає таку помилку в попередньому перегляді макета в Android Studio?

Проблеми з візуалізацією Не вдалося знайти наступні класи: - android.support.v7.internal.app.WindowDecorActionBar (Fix Path Build Path, Create Class) Порада: Спробуйте створити проект.


14
закрито як поза темою? серйозно? Ті, хто проголосував, щоб закрити це, точно не розуміють питання.
Джахід

Відповіді:


273

Панель дій застаріла і замінена на Панель інструментів. Зважаючи на це, ви можете зробити наступне, якщо ви хочете продовжувати використовувати панель дій:

  1. Відкрийте styles.xml у папці значень усередині папки res.
  2. Додайте слово Base до початку назви теми, щоб воно було "Base.Theme.AppCompat.Light.DarkActionBar"

введіть тут опис зображення

У мене було те саме питання сьогодні, і це рішення працювало на мене. FYI Хоча я в Android Studio, але, сподіваюся, рішення схоже на Eclipse.

FYI - це гідне повідомлення в блозі про заміну панелі дій на панелі інструментів, коли ви готові це зробити: https://blog.xamarin.com/android-tips-hello-toolbar-goodbye-action-bar/


8
Нічого, як Goog міняє речі з-під вас. Знову. Приємні плямистість @joshgoldeneagle!
сказати, що зараз

7
Я отримав цю помилку, просто створивши новий проект за замовчуванням в Android Studio. Це вирішило це.
AutonomousApps

Після одного дня досліджень нарешті я отримав виправлення. Спасибі @joshgoldeneale
R

якщо "Base.Theme.AppCompat.Light.DarkActionBar" не працює, ви повинні спробувати "Theme.Base.AppCompat.Light.DarkActionBar", тому що це робота для мене ... :) (android studio 3.0.1)
Mang Jojot

Ви приголомшливі
Naveed Ahmad

46

Я думаю, ви повинні бути залежними від "com.android.support:appcompat-v7:23.1.1"ваших moduleналаштувань.

ActionBar застаріло.

Просто змініть свої залежності 'com.android.support:appcompat-v7:23.1.1'на 'com.android.support:appcompat-v7:23.0.1'на "build.gradle" .

Ви також можете змінити свого батьківського стилю на "Theme.AppCompat.Light.NoActionBar".

Спробуйте використовувати Toolbarзамість ActionBar.


32

Цей працює для мене

Зміна батьківського AppTheme в res / values ​​/ styles.xml вирішила цю проблему. Замініть

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>

з

<style name="AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>

Або ви можете змінити рівень 21 API зі списку.


6
Це працює, але що саме це робить, коли ви ставите Base.Theme?
Мікро

Android замість панелі дій запровадила панель інструментів, що є причиною цієї помилки, але змінивши її на Base. Тему ви просто вирішуєте проблему. За замовчуванням це не змінюється самостійно (у поточній версії Android Studio), тому доводиться це робити вручну. Ви також можете пройти відповідь інших, яка також говорить вам те саме. Вибачте, що я був зайнятий проектом, тому не можу швидко відповісти.
Равікант Паудель

9

goto: res -> значення -> стилі (V21) ->

Код

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

виберіть тему як Apptheme.NoActionBarу попередньому перегляді . Оскільки ActionBarце знецінено, ласкаво просимо до ToolBar. НЕ потрібно змінювати свої залежності в build.gradle(Module:app). від com.android.support:appcompat-v7:23.1.1до com.android.support:appcompat-v7:23.0.1.

Сподіваюся, це допоможе вам !!!


8

У мене була аналогічна проблема, і як багато хто говорив з моменту застарілого ActionBar, слід було вказати трюк

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">

ПРИМІТКА: батько закінчується в .NoActionBar.

З часу застарілого ActionBar Android перейшов на використання ToolBar, про який ви можете прочитати тут developer.android.com

Я спробував вказати

<style name="AppTheme.NoActionBar">

Як інший пост заявляв і що кидав помилки. Хоча інші можуть не мати цього питання.


4

У мене така ж проблема в Android Studio 1.5 (навіть з AppCompatActivity), і моя спроба вирішити проблему полягала в тому, щоб оновити свою Android Studio на 2.0. Це вирішує проблему в моєму випадку. Завантажити посилання можна за посиланням: http://tools.android.com/download/studio/canary/latest


Крім того, Android Studio 2.0 має миттєвий запуск, що на мою думку дуже круто. Мій код миттєво оновлюється на моєму пристрої. Вам слід справді спробувати це.
ninjahoahong


3

дякую @joshgoldeneagle, працював в AS v1.4 для мене. також ефективним в AS є відкриття "build.gradle (Module.app)" і зміна версії з v7.23.1.1 на v7.23.0.1 -hth


2

Швидке виправлення

Виберіть тему без AtcionBar в Інструменті попереднього перегляду інтерфейсу
Виберіть кнопку зображення введіть тут опис зображення


2

Вам потрібно буде змінити рівень візуалізації api на 17, може виникнути проблема з візуалізацією з apis вищого рівня, може бути, вищий рівень apis припустимо мати тему за замовчуванням, і сподіваюся, що вам не вказано жодної.

введіть тут опис зображення


1

Для AS v1.4 додавання "Base" перед Theme.AppCompat.Light.DarkActionBar у папці styles.xml вирішило проблему

Крім того, оновлення до AS v2.1 також вирішило проблему. Що краще, залежить від співпрацівників та їх версії AS.


0

У res / values ​​/ styles.xml ви знайдете свою AppTheme, як показано нижче: -

Змініть його на: -

додавши "Базу", проблема візуалізації буде вирішена.


0

Зміна теми в маніфесті вирішила мою проблему.

 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.