Không thể tìm thấy các lớp sau: android.support.v7.internal.app.WindowDecorActionBar


114

Nguyên nhân gây ra lỗi sau trong bản xem trước bố cục trong Android Studio?

Sự cố kết xuất Không thể tìm thấy các lớp sau: - android.support.v7.internal.app.WindowDecorActionBar (Sửa Đường dẫn Xây dựng, Tạo Lớp) Mẹo: Cố gắng xây dựng dự án.


14
đóng cửa vì lạc đề? nghiêm túc? Những người đã bỏ phiếu để đóng điều này chắc chắn không hiểu câu hỏi nào cả.
Jahid 17/02/16

Câu trả lời:


273

Thanh tác vụ đã không được dùng nữa và được thay thế bằng Thanh công cụ. Như đã nói, bạn có thể làm như sau nếu muốn tiếp tục sử dụng Actionbar ngay bây giờ:

  1. Mở styles.xml trong thư mục giá trị bên trong thư mục res.
  2. Thêm từ Base vào đầu tên chủ đề để nó có nội dung "Base.Theme.AppCompat.Light.DarkActionBar"

nhập mô tả hình ảnh ở đây

Tôi đã gặp vấn đề tương tự ngày hôm nay và giải pháp này đã hiệu quả với tôi. FYI Tôi đang ở trong Android Studio, nhưng hy vọng, giải pháp tương tự cho Eclipse.

FYI đây là một bài đăng blog phù hợp về việc thay thế Thanh tác vụ bằng Thanh công cụ khi bạn sẵn sàng làm như vậy: https://blog.xamarin.com/android-tips-hello-toolbar-goodbye-action-bar/


8
Không có gì giống như Google thay đổi nội dung từ bên dưới bạn. Lần nữa. Đẹp xuất sắc @joshgoldeneagle!
saywhatnow

7
Tôi gặp lỗi này khi chỉ tạo một dự án mặc định mới trong Android Studio. Điều này đã giải quyết nó.
AutonomousApps

Sau một ngày nghiên cứu cuối cùng tôi đã sửa được. Cảm ơn @joshgoldeneale
Abish R

nếu "Base.Theme.AppCompat.Light.DarkActionBar" không hoạt động, bạn nên thử "Theme.Base.AppCompat.Light.DarkActionBar" vì nó phù hợp với tôi ... :) (android studio 3.0.1)
Mang Jojot

Bạn đang tuyệt vời
Naveed Ahmad

46

Tôi nghĩ rằng bạn phải phụ thuộc vào cài đặt "com.android.support:appcompat-v7:23.1.1"của bạn module.

ActionBar đã không được dùng nữa.

Chỉ cần thay đổi phần phụ thuộc của bạn từ 'com.android.support:appcompat-v7:23.1.1'thành 'com.android.support:appcompat-v7:23.0.1'trong "build.gradle" .

Bạn cũng có thể thay đổi kiểu cha mẹ của bạn thành "Theme.AppCompat.Light.NoActionBar".

Cố gắng sử dụng Toolbarthay vì ActionBar.


32

Cái này phù hợp với tôi

Thay đổi phụ huynh AppTheme trong res / values ​​/ styles.xml đã giải quyết vấn đề này. Thay thế

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

với

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

Hoặc bạn có thể thay đổi API cấp 21 từ danh sách.


6
Điều đó hoạt động nhưng nó chính xác làm gì khi bạn đặt Base.Theme?
Micro

Android đã giới thiệu thanh công cụ thay cho thanh Hành động, đây là nguyên nhân gây ra lỗi này nhưng bằng cách thay đổi nó thành Base. Nghĩa là bạn đang giải quyết vấn đề. Theo mặc định, nó không tự thay đổi (trong phiên bản Android Studio hiện tại) nên chúng tôi phải thực hiện thủ công. Bạn cũng có thể thông qua câu trả lời của những người khác cũng cho bạn biết điều tương tự. Xin lỗi, tôi đang bận trong dự án nên không thể trả lời nhanh.
Ravikant Paudel

9

goto: res -> giá trị -> kiểu (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>

chọn chủ đề của bạn như Apptheme.NoActionBartrong bản xem trước . Bởi vì ActionBarlà khắc khổ, chào mừng trở lại ToolBar. KHÔNG cần phải thay đổi phụ thuộc của bạn trong build.gradle(Module:app). từ com.android.support:appcompat-v7:23.1.1đến com.android.support:appcompat-v7:23.0.1.

Hy vọng điều này sẽ giúp bạn!!!


8

Tôi đã gặp sự cố tương tự và như nhiều người đã nói vì ActionBar không còn được dùng nữa, nên thủ thuật là chỉ định

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

LƯU Ý: rằng cha mẹ kết thúc bằng .NoActionBar.

Vì ActionBar không còn được dùng nữa nên Android đã chuyển sang sử dụng ToolBar mà bạn có thể đọc tại đây trên developer.android.com

Tôi đã thử chỉ định

<style name="AppTheme.NoActionBar">

Như một bài đăng khác đã nêu và điều đó đã gây ra lỗi. Mặc dù những người khác có thể không có vấn đề đó.


4

Tôi gặp vấn đề tương tự trong Android Studio 1.5 (ngay cả với AppCompatActivity) và nỗ lực giải quyết vấn đề của tôi là cập nhật Android Studio của tôi lên 2.0. Nó giải quyết vấn đề trong trường hợp của tôi. Bạn có thể tìm thấy liên kết tải xuống tại: http://tools.android.com/download/studio/canary/latest


Bên cạnh đó, Android Studio 2.0 có khả năng chạy ngay lập tức, theo tôi là rất tuyệt. Mã của tôi cập nhật ngay lập tức trong thiết bị của tôi. Bạn thực sự nên thử điều này.
ninjahoahong


3

cảm ơn @joshgoldeneagle, đã làm việc trong AS v1.4 cho tôi. cũng có hiệu quả trong AS là mở "build.gradle (Module.app)" và thay đổi phiên bản từ v7.23.1.1 sang v7.23.0.1 -hth


2

Sửa nhanh

Chọn chủ đề không có AtcionBar trong Công cụ xem trước giao diện người dùng
Nút chọn hình ảnh nhập mô tả hình ảnh ở đây


2

Bạn sẽ cần phải thay đổi mức hiển thị api thành 17, có thể có vấn đề hiển thị với api cấp cao hơn, có thể api cấp cao hơn giả sử có chủ đề mặc định và hy vọng bạn không được chỉ định không có.

nhập mô tả hình ảnh ở đây


1

Đối với AS v1.4, thêm "Base" trước Theme.AppCompat.Light.DarkActionBar trong thư mục styles.xml đã giải quyết được vấn đề

Ngoài ra, cập nhật lên AS v2.1 cũng giải quyết được vấn đề. Khả năng tốt hơn là tùy thuộc vào cộng tác viên và phiên bản AS của họ.


0

Trong res / values ​​/ styles.xml, bạn sẽ tìm thấy AppTheme của mình như bên dưới: -

Thay đổi nó thành: -

bằng cách thêm "Cơ sở", vấn đề kết xuất sẽ được giải quyết.


0

Thay đổi chủ đề trong tệp kê khai đã giải quyết được vấn đề của tôi.

 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.