Kelas berikut tidak dapat ditemukan: android.support.v7.internal.app.WindowDecorActionBar

114

Apa yang menyebabkan kesalahan berikut pada pratinjau tata letak di Android Studio?

Masalah Rendering Kelas berikut tidak dapat ditemukan: - android.support.v7.internal.app.WindowDecorActionBar (Perbaiki Jalur Build, Buat Kelas) Tip: Cobalah untuk membangun proyek.

Rahul
sumber
14
ditutup karena di luar topik? serius? Mereka yang memilih untuk menutup ini pasti tidak mengerti pertanyaannya sama sekali.
Jahid

Jawaban:

273

Actionbar sudah tidak digunakan lagi dan diganti dengan Toolbar. Karena itu, Anda dapat melakukan hal berikut jika Anda ingin terus menggunakan Actionbar untuk saat ini:

  1. Buka styles.xml di folder nilai di dalam folder res.
  2. Tambahkan Basis Kata di awal nama tema sehingga terbaca "Base.Theme.AppCompat.Light.DarkActionBar"

masukkan deskripsi gambar di sini

Saya memiliki masalah yang sama hari ini dan solusi ini berhasil untuk saya. FYI, saya menggunakan Android Studio, tapi mudah-mudahan, solusinya serupa untuk Eclipse.

FYI di sini adalah posting blog yang layak tentang mengganti Actionbar dengan Toolbar ketika Anda siap melakukannya: https://blog.xamarin.com/android-tips-hello-toolbar-goodbye-action-bar/

joshgoldeneagle
sumber
8
Tidak ada yang seperti Goog yang mengubah sesuatu dari bawah Anda. Lagi. Bercak bagus @joshgoldeneagle!
saywhatnow
7
Saya mendapat kesalahan ini hanya membuat proyek default baru di Android Studio. Ini menyelesaikannya.
AutonomousApps
Setelah satu hari penelitian akhirnya saya dapat memperbaikinya. Terima kasih @josholdeneale
Abish R
jika "Base.Theme.AppCompat.Light.DarkActionBar" tidak berfungsi, Anda harus mencoba "Theme.Base.AppCompat.Light.DarkActionBar" karena berfungsi untuk saya ... :) (android studio 3.0.1)
Mang Jojot
Anda luar biasa
Naveed Ahmad
46

Saya pikir Anda harus bergantung pada pengaturan "com.android.support:appcompat-v7:23.1.1"Anda module.

ActionBar sudah tidak digunakan lagi.

Ubah saja dependensi Anda dari 'com.android.support:appcompat-v7:23.1.1'menjadi 'com.android.support:appcompat-v7:23.0.1'di "build.gradle" .

Anda juga dapat mengubah orang tua gaya Anda menjadi "Theme.AppCompat.Light.NoActionBar".

Coba gunakan Toolbaralih - alih ActionBar.

Tampan.Dou
sumber
32

Yang ini berhasil untuk saya

Mengubah induk AppTheme di res / values ​​/ styles.xml menyelesaikan masalah ini. Menggantikan

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

dengan

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

Atau Anda dapat mengubah API level 21 dari daftar.

Ravikant Paudel
sumber
6
Itu berhasil tetapi apa yang sebenarnya dilakukannya ketika Anda meletakkan Tema Dasar?
Mikro
Android telah memperkenalkan toolbar sebagai pengganti Action bar yang merupakan penyebab kesalahan ini tetapi dengan mengubahnya menjadi Base.Tema Anda hanya menyelesaikan masalah. Secara default tidak berubah sendiri (di versi Android Studio saat ini) jadi harus kita lakukan secara manual. Anda juga dapat memeriksa jawaban orang lain yang juga memberi tahu Anda hal yang sama. Maaf saya sibuk dalam proyek jadi tidak bisa menjawab dengan cepat.
Ravikant Paudel
9

goto: res -> nilai -> gaya (V21) ->

Kode

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

pilih tema Anda seperti Apptheme.NoActionBarpada pratinjau . Karena ActionBardepricated, selamat datang kembali ToolBar. TIDAK perlu mengubah dependensi Anda di build.gradle(Module:app). dari com.android.support:appcompat-v7:23.1.1ke com.android.support:appcompat-v7:23.0.1.

Semoga ini bisa membantu Anda !!!

Narendra Baratam
sumber
8

Saya memiliki masalah serupa, dan seperti yang dikatakan banyak orang sejak ActionBar tidak digunakan lagi, triknya adalah untuk menentukan

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

CATATAN: bahwa induk diakhiri dengan .NoActionBar.

Sejak ActionBar tidak digunakan lagi, Android telah menggunakan ToolBar yang dapat Anda baca di sini di developer.android.com

Saya mencoba menentukan

<style name="AppTheme.NoActionBar">

Sebagai posting lain menyatakan dan itu melemparkan kesalahan. Meskipun orang lain mungkin tidak memiliki masalah itu.

john.weland
sumber
4

Saya memiliki masalah yang sama di Android Studio 1.5 (bahkan dengan AppCompatActivity), dan upaya saya untuk memecahkan masalah tersebut adalah memperbarui Android Studio saya ke 2.0. Ini memecahkan masalah dalam kasus saya. Anda dapat menemukan tautan unduhan di: http://tools.android.com/download/studio/canary/latest

ninjahoahong
sumber
Selain itu, Android Studio 2.0 memiliki fungsi instan yang menurut saya sangat keren. Kode saya langsung diperbarui di perangkat saya. Anda harus benar-benar mencobanya.
ninjahoahong
3

terima kasih @joshgoldeneagle, bekerja di AS v1.4 untuk saya. juga efektif di AS adalah dengan membuka "build.gradle (Module.app)" dan mengubah versi dari v7.23.1.1 menjadi v7.23.0.1 -hth

uber
sumber
2

Perbaikan cepat

Pilih tema tanpa AtcionBar di Alat Pratinjau UI
Pilih tombol gambar masukkan deskripsi gambar di sini

vovahost
sumber
2

Anda perlu mengubah api tingkat rendering ke 17, mungkin ada masalah rendering dengan API tingkat yang lebih tinggi, mungkin API tingkat yang lebih tinggi misalkan memiliki tema default, dan harap Anda tidak ditentukan tidak ada.

masukkan deskripsi gambar di sini

Bajrang Hudda
sumber
1

Untuk AS v1.4 menambahkan "Base" sebelum Theme.AppCompat.Light.DarkActionBar di folder styles.xml menyelesaikan masalah

Selain itu, memperbarui ke AS v2.1 juga menyelesaikan masalah. Mana yang lebih baik tergantung pada kolaborator dan versi AS mereka.

devin e
sumber
0

Di res / values ​​/ styles.xml, Anda akan menemukan AppTheme Anda seperti di bawah ini: -

Ubah menjadi: -

dengan menambahkan "Base" masalah rendering akan terselesaikan.

JayJoshi
sumber
0

Mengubah tema dalam manifes memecahkan masalah saya.

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