2013-08-21 38 views
14

Làm thế nào để sử dụng đúng cách Thư viện hỗ trợ Android, vì tôi có lỗi này trong file manifest của tôi:
Theme.AppCompat.Light.DarkActionBar - Không tìm thấy tài nguyên

android:theme="@style/Theme.AppCompat.Light.DarkActionBar" 

error: Error: No resource found that matches the given name 
(at 'theme' with value '@style/Theme.AppCompat.Light.DarkActionBar'). 
AndroidManifest.xml /ttab line 39 Android AAPT Problem 

Bạn tôi đã thực hiện này đối với tôi trước đó trên máy tính khác , bây giờ tôi phải làm điều này một mình. Xin hãy giúp tôi :)

Tôi đang sử dụng ADT

styles.xml của tôi:

<resources> 

    <!-- 
     Base application theme, dependent on API level. This theme is replaced 
     by AppBaseTheme from res/values-vXX/styles.xml on newer devices. 
    --> 
    <style name="AppBaseTheme" parent="android:Theme.Light"> 
     <!-- 
      Theme customizations available in newer API levels can go in 
      res/values-vXX/styles.xml, while customizations related to 
      backward-compatibility can go here. 
     --> 
    </style> 

    <!-- Application theme. --> 
    <style name="AppTheme" parent="AppBaseTheme"> 
     <!-- All customizations that are NOT specific to a particular API-level can go here. --> 
    </style> 

    <style name="Theme.AppCompat.Light"> 
    <!-- theme customizations here. --> 
    </style> 


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


</resources> 
+1

Nhập dự án Thư viện AppCompat (hỗ trợ lib v7) vào nhật thực của bạn. Xem phần này - http://developer.android.com/tools/support-library/index.html – Varun

+0

tôi đã làm điều này trước đây, nhưng vấn đề chưa được giải quyết – Jerry

+0

Bạn đã thêm dự án appcompat làm dự án thư viện trong ứng dụng của mình chưa ? – Varun

Trả lời

16

Trong "android-support-v7-appcompat" dự án:

  • Xóa “android -support-v7-appcompat ”từ Trình khám phá gói.
  • nhập lại và kiểm tra “Sao chép vào không gian làm việc”
  • Trong Properties -> Android -> Dự án xây dựng mục tiêu, bỏ chọn Android 2.2 và rà soát Android 4.1.2
  • Trong Java xây dựng con đường, bỏ chọn nếu bạn có bất kỳ. thư viện jar, và bỏ chọn dependences

Trong Mặt khác, các dự án có sử dụng “android-support-v7-appcompat”:

  • Trong Properties -> Android thêm thư viện, nhưng bỏ chọn "IsLibrary ”
  • Trong Android -> Dự án xây dựng máy in phun kiểm tra Android 4.0.
  • Trong "Java Build Path" -> Trình tự, xuất khẩu -> bỏ chọn thư viện .jar
  • Cuối cùng làm một “dự án -> sạch” cả hai dự án
+0

Tôi đã thử rất nhiều thứ từ các câu hỏi tương tự khác trước khi tôi đến đây, vấn đề là xuất khẩu các phụ thuộc, không biết rằng các thư viện không phải xuất các thứ đó. Cảm ơn bạn, bạn đã cứu ngày của tôi! :) Gracias broder, te pasaste! – Aiapaec

+0

Thật tuyệt vời khi chỉ định cách nhập tệp ở địa điểm đầu tiên - khi tôi nhấp vào "nhập", tôi không có tùy chọn để nhập khẩu một cái lọ. –

7

Nếu bạn đang sử dụng Gradle, sau đó bạn có sự cố với phiên bản thư viện tương thích mới nhất.

Nếu bạn có những điều sau đây trong tập tin build.gradle của bạn với một '+' ở cuối:

dependencies { 
    compile 'com.android.support:appcompat-v7:+' 
} 

sau đó nó có thể được lấy một phiên bản sau này của thư viện hơn bạn muốn.

Thay đổi phụ thuộc vào:

dependencies { 
    compile 'com.android.support:appcompat-v7:18.0+' 
} 

có thể khắc phục vấn đề của bạn.

5

Ông có thể xin vui lòng thử

android:theme="Theme.AppCompat.Light.DarkActionBar" 

thay vì

android:theme="@style/Theme.AppCompat.Light.DarkActionBar" 
+0

Nó thực sự hoạt động? –

+1

Điều đó không hiệu quả –

0

Trong tập tin kiểm tra ứng dụng phụ thuộc của bạn nếu bạn có sự phụ thuộc

compile 'com.android.support:appcompatv[anything here] 

hoặc

implement 'com.android.support:appcompat[anything here] 

xóa hoặc nhận xét chúng, nhấp vào "bóng đèn" cho đề xuất tự động và chọn thêm phụ thuộc thư viện. clicking on the autofillbulb for appcompat

Cuộn tùy chọn cho phiên bản đầu tiên của appcompat. Thư viện sẽ được thêm vào bên dưới danh sách các phụ thuộc. Tạo lại ứng dụng hoặc làm mất hiệu lực cache và khởi động lại

Trong một trường hợp, thao tác này không hoạt động và chuyển đến thư mục chứa dự án, xóa tệp .gradle và khởi động lại Android Studio. Có được từ câu trả lời của Sneh Pandya trong https://reformatcode.com/code/android/error-while-gradle-sync