ไม่สามารถหา Theme.AppCompat.Light สำหรับ Android ActionBar ใหม่ที่สนับสนุน


354

ฉันกำลังพยายามใช้ห้องสมุดสนับสนุนActionBarใหม่ที่เผยแพร่โดย Google เมื่อสองสามวันก่อน ก่อนหน้านี้ฉันได้ติดตั้ง ActionBarSherlock เรียบร้อยแล้วโดยไม่มีปัญหาใด ๆ โดยใช้วิธีการเดียวกับที่ระบุไว้ในหน้าการตั้งค่าห้องสมุดสนับสนุนของ Google Developer - โดยใช้คำแนะนำในการรวมทรัพยากร (ซึ่งคล้ายกับที่ ActionBarSherlock ทำ) ฉันมีโครงการห้องสมุดโหลดเข้าสู่โครงการของฉันเองในฐานะห้องสมุดเช่นกัน

ฉันสามารถบอกได้ว่าห้องสมุดกำลังโหลดได้ดี เมื่อแทนที่จะขยายกิจกรรมใน MainActivity.java ของฉันฉันเปลี่ยนมันเพื่อขยาย ActionBarActivity (ตามคำแนะนำของ Google) ไม่มีข้อผิดพลาดเกิดขึ้นและนำเข้าอย่างถูกต้อง

ฉันได้ลองข้ามไฟล์ style.xml และเพิ่ม@style/Theme.AppCompat.Lightโดยตรงไปยัง AndroidManifest.xml สำหรับทั้งคู่<application>และ<activity>ด้วยandroid:theme="@style/ThemeAppCompat.Light"ความพยายามทั้งหมดทำให้เกิดข้อผิดพลาดเดียวกัน

ตอนนี้ปัญหาคือฉันไม่สามารถเปลี่ยนธีมได้แม้แต่คนเดียวก็สร้างได้โดยไม่เกิดข้อผิดพลาด ด้านล่างเป็นข้อผิดพลาดที่ฉันได้รับตามด้วยไฟล์ style.xml ที่ฉันเปลี่ยนเพื่อใช้ธีมใหม่

ฉันมีประสบการณ์ปานกลางในการทำงานกับแอพ Android และกำลังใช้งาน Eclipse กับเวอร์ชันล่าสุดของ Support Libraries และ SDK ที่คอมไพล์ด้วย API 18 (Android 4.3)

ได้รับข้อผิดพลาดระหว่างการสร้าง

ข้อผิดพลาด: เกิดข้อผิดพลาดในการดึงข้อมูลพาเรนต์สำหรับรายการ: ไม่พบทรัพยากรที่ตรงกับชื่อที่ระบุ '@ style / Theme.AppCompat.Light' styles.xml / ActBarTest / res / values ​​บรรทัดที่ 3 ปัญหา AAPT ของ Android

style.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Theme.ProsoftStudio.ACTest" parent="@style/Theme.AppCompat.Light">
    </style>
</resources>

ข้อเสนอแนะใด ๆ นี่ไม่เคยมีปัญหากับ ActionBarSherlock ฉันต้องการทำงานกับการใช้ไลบรารีการสนับสนุนใหม่นี้ ดูเหมือนว่า. jar กำลังโหลดอยู่ แต่ไม่ใช่ทรัพยากร


1
พยายามทำความสะอาดโครงการบางทีคุณต้องโหลดการอ้างอิงใหม่เพื่อให้สไตล์จาก AppCompact สามารถโหลดซ้ำได้เช่นกัน
TheWizKid95

2
@ TheWizKid95 ฉันทำความสะอาดแอพของฉันฉันกำลังพยายามติดตั้งและไลบรารี่ ไม่มีใครส่งผลให้มีการเปลี่ยนแปลงรหัสตาม Eclipse และไม่ได้แก้ไขปัญหาใด ๆ
Brandon Enriquez

คุณได้เพิ่มไลบรารีการสนับสนุนด้วยทรัพยากรหรือไม่ เพิ่ม jar ลงใน libs ไม่เพียงพอ
Gabriele Mariotti

@GabrieleMariotti ใช่ฉันเพิ่มทรัพยากรเช่นเดียวกับห้องสมุดโครงการพิเศษที่ Google สั่ง
Brandon Enriquez

สิ่งที่ใช้ได้ผลสำหรับฉันคือการเพิ่มเป็นโครงการในพื้นที่ทำงาน เพียงนำเข้าขวดและเพิ่มไปยัง buildpath ไม่ทำงาน
Johan

คำตอบ:


386

คุณต้องทำต่อไป:

  1. File->Import (android-sdk\extras\android\support\v7). เลือก "AppCompat"
  2. Project-> properties->Android. ในไลบรารีส่วน "เพิ่ม" และเลือก "AppCompat"
  3. นั้นคือทั้งหมด!

หมายเหตุ: หากคุณใช้ "android: showAsAction" ในรายการเมนูคุณต้องเปลี่ยนคำนำหน้า android ตามตัวอย่างในhttp://developer.android.com/guide/topics/ui/actionbar.html


65
สิ่งนี้ไม่ได้ผลสำหรับฉัน ฉันทำสิ่งที่เขียนไว้ที่นี่ แต่ท้ายที่สุดพบว่าไม่มีทรัพยากรนับร้อยที่ตรงกับข้อผิดพลาดของชื่อ ทรัพยากรที่ขาดหายไปคือสไตล์ที่รวมอยู่ใน API 11 ขึ้นไป แต่สิ่งนี้ควรใช้งานได้จาก API 7 มีการเชื่อมต่อที่ฉันขาดหายไปไหม!
apocalypz

5
มีปัญหาที่คล้ายกันธีม Theme.AppCompat.Light.NoActionBar ไม่มีอยู่ในไลบรารี appcompat ของฉัน
JMRboosties

9
ใน File-Import ฉันไม่พบ 'android-sdk' ฉันเห็น 'andoird' เท่านั้น ใคร?
shahar eldad

2
apocalypz ฉันคิดว่าคุณขาดทรัพยากรเพราะคุณได้นำเข้าห้องสมุดโดยไม่ต้องใช้ทรัพยากร นี่คือลิงค์สำหรับ "การเพิ่มไลบรารีด้วยทรัพยากร" developer.android.com/tools/support-library/…
Hades200621

1
ทำตามขั้นตอนข้างต้น + เพิ่ม sdk \ extras \ android \ support \ v13android-support-v13.jar ไปยังไดเรกทอรี libs ของโครงการจะแก้ไขปัญหา
Wasim A.

119

หากเช่นฉันคุณกำลังติดตามกวดวิชา Android บนhttp://developer.android.com/training/basics/actionbar/setting-up.htmlและได้รับข้อผิดพลาดนี้ให้ลองเปลี่ยนAppBaseThemeสไตล์ในstyles.xmlไฟล์ทั้งหมด ในรายละเอียด:

  1. ในres/values/styles.xmlการเปลี่ยนไฟล์บรรทัด:

    <style name="AppBaseTheme" parent="android:Theme.Light">

    ถึง:

    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">
  2. ในres/values-v11/styles.xmlการเปลี่ยนไฟล์บรรทัด:

    <style name="AppBaseTheme" parent="android:Theme.Holo.Light">

    ถึง:

    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">
  3. ในres/values-v14/styles.xmlการเปลี่ยนไฟล์บรรทัด:

    <style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">

    ถึง:

    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

ตอนนี้แอปพลิเคชันควรจะทำงานได้ดี


11
ใช่มันใช้ได้สำหรับฉัน สิ่งสำคัญที่ควรสังเกตคือในหน้าแม่แบบ "android:" คำนำหน้าสร้างขึ้นในธีม (สไตล์) ในขณะที่ค่าที่ไม่มีคำนำหน้านี้อ้างอิงสไตล์ของคุณเองหรือสไตล์ในห้องสมุดใด ๆ ที่คุณเชื่อมโยง ... เช่นสนับสนุน Android -v7-AppCompat
John Bentley

ไม่มีres/values/styles.xmlในโครงการ Android ใหม่ android create projectอย่างน้อยไม่ได้เมื่อคุณสร้างมันด้วย
weberc2

คุณได้รับ styles.xml เมื่อคุณสร้างโครงการด้วยตัวช่วยสร้างเลือกแอปแบบเต็มหน้าจอและซ่อนการควบคุม
JJ_Coder4Hire

8
ไม่มีอะไรที่เหมาะกับฉัน ... 4 ชั่วโมงก็สูญเปล่าไปแล้ว ฉันยังไม่พบทรัพยากรที่ตรงกับชื่อที่ให้ไว้ (ที่ 'ชุดรูปแบบ' กับค่า '@ style / Theme.AppCompat.Light') กำลังจะยอมแพ้
c.fogelklou

2
ฉันแค่เปลี่ยนสิ่งเหล่านั้นด้วยวิธีอื่นและนั่นคือสิ่งที่ต้องทำในโครงการของฉัน
จอห์น

28

นี่เป็นปัญหาที่สามารถเกิดขึ้นได้ใน Android Studio หากคุณแก้ไขโมดูลโครงสร้างโครงการ ในกรณีนี้คุณอาจต้องเพิ่มการอ้างอิงอีกครั้ง ในเท็กซ์เอดิเตอร์แก้ไขไฟล์ 'build.gradle' เพื่อรวมการพึ่งพาที่จำเป็น:

dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

สิ่งนี้ควรอัปเดตไฟล์ '{your_project_name} .iml' ของคุณด้วยองค์ประกอบ lib:

<orderEntry type="library" exported="" name="appcompat-v7-19.0.1" level="project" />

1
โปรดจำไว้ว่ามีไฟล์ 2 * .iml รายการที่มีรายการไลบรารีอยู่ในโฟลเดอร์ย่อยของโครงการและมีชื่อไฟล์ตัวพิมพ์เล็ก
David Douglas

2
นี่เป็นการแก้ไขปัญหาของฉัน เพิ่ม appcompat ให้กับการพึ่งพาใน build.gradle ภายใน ฉันเสียใจที่ต้องบอกว่าฉันแก้ไขด้วยตนเองเพื่อให้ตรงกับโครงการอื่นที่ทำลายสิ่งต่าง ๆ !
JJ_Coder4Hire

28

ฉันจะแบ่งปันประสบการณ์ของฉันกับปัญหานี้ ฉันบ้าไปแล้วเพราะสิ่งนี้ แต่ฉันพบว่าปัญหาเป็นข้อผิดพลาดของ Eclipse เองแทนที่จะเป็นรหัสของฉัน: ใน eclipse ไม่สามารถอ้างอิงโครงการห้องสมุด Android ในโครงการ Android อื่นได้

ดังนั้นหากคุณมีห้องสมุดสนับสนุน Android ในไดรฟ์ C: และโครงการของคุณในไดรฟ์ D: บนคอมพิวเตอร์ของคุณ Eclipse จะทำงานไม่ถูกต้องและจะไม่ทราบว่าห้องสมุดสนับสนุน Android อยู่ที่ใด (ขีดสีเขียวเปลี่ยนเป็นกากบาทสีแดง ) ในการแก้ปัญหานี้คุณต้องย้ายโครงการทั้งสองไปยังฮาร์ดไดรฟ์เดียวกัน


4
ขอบคุณ. นั่นเป็นกรณีของสถานการณ์ของฉัน ในขั้นตอนที่ 1 (ไฟล์ -> นำเข้า (android-sdk \ extras \ android \ support \ v7) เลือก "appcompat") ต้องตรวจสอบ "copy to workspace"
ฮง

ฉันต้องเผชิญกับปัญหาที่คล้ายกัน ขอบคุณมากมันยุ่งยากจริงๆ
SILINIK

ปัญหาเดียวกันใน AndroidStudio ฉันใช้เวลาประมาณ 3 ชั่วโมงในการพยายามคิดออก ขอบคุณ!
Ruben Martinez Jr.

Jup สามารถยืนยันสิ่งนี้ได้ .. IntellJ มีปัญหาเดียวกันทั้งหมดอย่างน้อยกับ AppCompat ... เสียเวลา 4 ชั่วโมงกับปัญหานี้
puelo

นี่คือทางออกสำหรับฉันเช่นกัน การคัดลอกโครงการ appcompat_v7 ไปยังไดรฟ์เดียวกันกับโครงการเป้าหมายและเพิ่มเป็น lib ทำให้มันทำงานได้โดยไม่มีปัญหา
MayaPosch

23

ฉันทำสิ่งต่อไปนี้ใน Eclipse ด้วยโครงการ Android Support Library ( APL ) และโครงการหลัก ( MP ):

  1. มั่นใจทั้งAPLและMPมีเดียวกันและminSdkVersiontargetSdkVersion

  2. เพิ่มAPLเป็นการพึ่งพาสร้างสำหรับMP :

    1. ไปที่ "Properties> Java Build Path" ของMPจากนั้น

    2. เลือก "โครงการแท็บ" และการเพิ่มAPL

  3. ในคุณสมบัติของMPภายใต้ "Android" เพิ่มการอ้างอิงถึงAPLภายใต้ไลบรารี

1 และ 2 มีการอ้างอิงถึงเรียน Java ทำงานได้ดี ... แต่ฉันยังคงเห็นข้อผิดพลาดในmanifest.xmlสำหรับMPเมื่อพยายามที่จะอ้างอิง@style/Theme.AppCompat.LightจากAPL สิ่งนี้หายไปเมื่อฉันทำตามขั้นตอนที่ 3


9
ใช้ "@ style / Theme.AppCompat ... " แทน "@android: style / Theme.AppCompat ... " บวก # 3 จากคำตอบนี้แก้ปัญหาของฉัน
BeccaP

ดูเหมือนว่าจุดที่ 2 จะไม่ถูกต้อง มันนำไปสู่ข้อความบันทึกข้อผิดพลาดของบิลด์ตามที่อธิบายและแก้ไขที่นี่: stackoverflow.com/questions/18421274/…
OneWorld

18

มันช้าไปหน่อย แต่นี่คือวิธีที่ฉันจะทำให้มันเสร็จใน AndroidStudio!

คลิกขวาที่แอพเพื่อไปยังคุณสมบัติ คลิกขวาที่แอพเพื่อไปยังคุณสมบัติ

ไปที่การอ้างอิงและคลิกที่เครื่องหมาย '+' และเลือกการขึ้นต่อกันของไลบรารี ไปที่การอ้างอิงและคลิกที่เครื่องหมาย '+' และเลือกการพึ่งพาห้องสมุด เลือก appcompat-v7 เลือก appcompat-v7


12

โซลูชัน IntelliJ IDEA

1.เรียกใช้โปรแกรมจัดการ SDKและติดตั้งSDK ล่าสุดและAndroid สนับสนุนดีก็ใช้ได้ เวอร์ชั่นของ SDK และ Android รองรับ Libarary ควรเหมือนกัน ! 23 ในกรณีของฉัน ตัวแปรอื่นจะให้ข้อผิดพลาดแก่คุณ 2.เปลี่ยนเวอร์ชั่น SDK ของโครงการ IDEA ของคุณเป็นโครงการล่าสุดที่คุณติดตั้งในขั้นตอนก่อนหน้า (ps. คุณไม่สามารถใช้ Maven)
ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่

3.เพิ่มโมดูลใหม่จาก sourse ที่มีอยู่ในโครงการ IDEA ของคุณ
ป้อนคำอธิบายรูปภาพที่นี่

4.เพิ่มโครงการ AppCompat !!! ควรอยู่ภายใต้ SDK สุดท้ายเช่นกัน! (ps พูดว่า "ใช่" ที่ใดก็ได้ในขั้นตอนนี้)
ป้อนคำอธิบายรูปภาพที่นี่

5.เปิดการตั้งค่าโมดูลหลักของโครงการของคุณและเพิ่มไว้ใน 3 พึ่งพาถัดไป:

5.1 โมดูลการพึ่งพา เลือกandroid-support-v7-appcompat
ป้อนคำอธิบายรูปภาพที่นี่

5.2 2 ชิ้น การพึ่งพาห้องสมุด เพิ่มandroid-sdk \ extras \ android \ support \ v7 \ appcompat \ libs \ android-support-v4.jarและandroid-support-v4 \ android-support-v7-appcompat.jar
ป้อนคำอธิบายรูปภาพที่นี่

โดยรวมแล้วจะเป็น:
ป้อนคำอธิบายรูปภาพที่นี่

6. สำคัญมาก !!!
เพิ่มธีมด้วยคำนำหน้า @style (ไม่ได้อีก!)
ป้อนคำอธิบายรูปภาพที่นี่



โซลูชัน Android Studio

1.เรียกใช้โปรแกรมจัดการ SDKและติดตั้งSDK ล่าสุดและAndroid สนับสนุนดีก็ใช้ได้ เวอร์ชั่นของ SDK และ Android รองรับ Libarary ควรเหมือนกัน ! 23 ในกรณีของฉัน ตัวแปรอื่นจะให้ข้อผิดพลาดแก่คุณ
ป้อนคำอธิบายรูปภาพที่นี่

2.เพิ่มถัดจากbuild.gradle

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

PS หากคุณยังใหม่ในการพัฒนา Android ฉันขอแนะนำให้คุณย้ายไปที่ Android Studio & Gradle ทันที - คุณจะได้รับวิธีที่ง่ายที่สุดในการจัดการแอพ Android ของคุณ


คำตอบที่ดีที่สุดที่ฉันเคยพบใน SO เกี่ยวกับ android
Alex Jolig

10

สำหรับ Android Studio 1.2.2

ดร็อป "android" จากparentค่าแอททริบิวต์:

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

7

คุณต้องอ้างอิง $ ANDROID_SDK / บริการเสริม / android / support / v7 / appcompat


คุณต้องการทราบรายละเอียดเพิ่มเติมว่าอ้างอิงได้อย่างไร? ฉันได้อ้างอิงโฟลเดอร์ที่แน่นอนนั้นตามคำแนะนำของนักพัฒนา Android ที่ระบุไว้แล้ว ทำตามคำแนะนำตามที่ระบุไว้ในเว็บไซต์ของพวกเขา ฉันสามารถบอกได้ว่ามันถูกอ้างอิงอย่างน้อยบางส่วนเพราะ ActionBarActivity ถูกขยายโดยไม่มีข้อผิดพลาด
Brandon Enriquez

3
อ้างอิงappcompatเป็นห้องสมุด Android ทรัพยากรโครงการหลักของคุณสามารถพบชุดรูปแบบจาก appcompat
Song

นั่นเป็นการหลอกลวง ก่อนหน้านี้ฉันเคยทำใน Java Build Path
Brandon Enriquez

5

สำหรับ IntelliJ IDEA หรือ Android Studio:

เพิ่มลงในไฟล์ app.gradle build

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

แทนที่ -v:xx.0+ด้วยเป้าหมายการสร้างของคุณหากคุณมี 19 แพลตฟอร์มมันจะต้องเป็นดังนี้:

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

3

ทำตามขั้นตอนของ @rcdmk ลบการสนับสนุน android v4.jar ในโครงการของคุณ มันขัดแย้งกับเวอร์ชันอัปเดตใหม่ที่พบใน appcompat


3

ฉันมีปัญหาเดียวกันและเสียเวลา 4-5 ชั่วโมงในการแก้ปัญหา ปัญหาของฉันแก้ไขด้วย;

  1. จาก SDK ผู้จัดการลบแพคเกจ "ห้องสมุดสนับสนุน Android" และ "พื้นที่เก็บข้อมูลสนับสนุน Android"
  2. ติดตั้งใหม่ "คลังสนับสนุน Android" และ "คลังเก็บสนับสนุน Android"
  3. ลบ "android-support-v7-appcompat" หรือ "appcompat_v7 มีอะไรอีกบ้างในโครงการของคุณ
  4. นำเข้า android-support-v7-appcompat จาก "adt-bundle-windows-x86_64-20140702 \ sdk \ extras \ android \ support \ v7 \ appcompat"
  5. เลือกโปรเจ็กต์ของคุณและจากไฟล์เลือกคุณสมบัติและค้นหา Java Build Path จากแท็บ "Project" ลบสิ่งอื่นที่นั่นแล้วเพิ่ม และคุณต้องเห็น "android-support-v7-appcompat" เลือกและเพิ่มลงในแท็บโครงการ
  6. ตรวจสอบไฟล์ project.properties ใต้ไฟล์ Project ของคุณคุณจะเห็นดังนี้ target = android-21 android.library.reference.1 = .. / android-support-v7-appcompat จากนั้นตรวจสอบไฟล์ AndroidManifest.xml หากเป้าหมายคือ 21 หรืออะไรก็ได้ที่คุณเลือก ตรวจสอบการอ้างอิงไลบรารีเช่นเดียวกับห้องสมุดที่คุณเลือกก่อนหน้านี้

หวังว่าคุณจะพบทางออกของคุณ


1
สิ่งที่ช่วยฉันได้คืออัปเกรดห้องสมุดสนับสนุน Android ของฉันโดยใช้ตัวจัดการ SDK ลบไลบรารีแอปคอมแพคเก่าออกจากเวิร์กสเปซนำเข้าแอพพลิเคชั่นไลบรารีที่อัปเดตใหม่แล้ว
Varun

3

แก้ไขปัญหาของฉันผ่านขั้นตอนต่อไปนี้

  1. ไฟล์ -> นำเข้า (android-sdk \ extras \ android \ support \ v7 \ appcompat)
  2. คลิกขวาที่โครงการ -> คุณสมบัติ -> Android ในไลบรารีส่วน "เพิ่ม" และเลือกไลบรารี appcompat ที่รวมอยู่ในขั้นตอนที่ 1
  3. ลบไฟล์ทั้งหมดออกจากไดเรกทอรี libs ของโครงการ
  4. เพิ่มไฟล์ต่อไปนี้ลงในไดเรกทอรี libs ของโครงการ <SDK-PATH>\extras\android\support\v13android-support-v13.jar

    รีสตาร์ท Eclipse หากจำเป็น แค่นั้นแหละ. ปัญหาของคุณควรหายไป


ดีใจที่มันช่วยใครซักคน :)
Wasim A.

2

การทำงาน:

<style name="MyApp" parent="Theme.AppCompat.Light">
</style>
<style name="MyApp" parent="@style/Theme.AppCompat.Light">
</style>
<style name="Theme.AppCompat.Light.MyApp">
</style>

2

เนื่องจาก dialouge นำเข้านั้นแตกต่างใน Android Studio 1.0.1 ฉันไม่สามารถใช้งาน Svyatoslav Lobachs ได้

ฉันดาวน์โหลด "Android Support Repository" ใน SDK Manager แทน จากนั้นเพิ่ม

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

build.gradleไปยัง ทำงานให้ฉัน


1

http://developer.android.com/tools/support-library/setup.htmlมีข้อบกพร่อง ใน Property-> Java build path -> 'Project' และ 'Order and Export' ไม่ควรมี jar ใด ๆ การลบพวกเขาออกและการตรวจสอบ 'ห้องสมุดส่วนตัวของ Android' และ 'การอ้างอิงของ Android' แก้ปัญหาของฉันได้


1

ฉันประสบปัญหาเดียวกับ OP หลังจากคลิกขวาที่โครงการของฉันและเลือกปิดโครงการที่ไม่เกี่ยวข้องโครงการปิดที่ไม่เกี่ยวข้องกัน

ในกรณีของฉันฉันแก้ไขปัญหาโดยเปิดโครงการappcompat_v7อีกครั้งและทำความสะอาด / สร้างใหม่ทั้งสองโครงการ


1

มันเกิดขึ้นกับฉันเมื่อ Eclipse (Luna) / AndroidSDK (ไม่ใช่ Android Stduio) ถูกนำมาใช้กับเครื่องมือและห้องสมุดล่าสุด ณ วันที่ 14 มกราคม 2015 ในระหว่างโครงการเช่น HelloWorld เมื่อฉันติดตั้งเครื่องมือเหล่านั้นและทำให้ HelloWorld เป็นแอพแรกที่ฉันยอมรับค่าเริ่มต้นทั้งหมด - นี่เป็นปัญหาในกรณีของฉัน

ก่อนอื่นให้ตรวจสอบว่ามีการติดตั้งไลบรารี "Android Support Library" หรือไม่ ถ้าไม่ติดตั้ง ไม่ได้ติดตั้งเป็นค่าเริ่มต้น คุณสามารถทำได้ทั้งหมดใน "Android SDK manager" ที่มีอยู่ในเมนู

(Android SDK Manager -> พิเศษ -> ห้องสมุดสนับสนุน Android)

พร (ลูกหนี้) <> <



0

ฉันทำผิดพลาดจริง ๆ สำหรับเรื่องนี้ เมื่อฉันได้รับข้อผิดพลาดเดียวกันทุกครั้งที่ฉันไม่สามารถเข้าใจสิ่งที่ผิด จากนั้นก็คลิกฉันว่าเมื่อฉันปิดโครงการทั้งหมดในพื้นที่ทำงานของฉันและนั่นเป็นเวลานับตั้งแต่ปัญหาทั้งหมดเริ่มต้นขึ้น ดังนั้นเพียงตรวจสอบว่า "appcompat_v7" ของคุณไม่ได้ปิดอยู่ หากเปิดโครงการโดยดับเบิลคลิกแล้วล้างและสร้างโครงการของคุณอีกครั้ง ในกรณีของฉันข้อผิดพลาดได้หายไป การเข้ารหัสที่มีความสุข!


0

ฉันไม่แน่ใจว่าไลบรารีการสนับสนุน v13 พร้อมใช้งานเมื่อมีการโพสต์คำถามนี้หรือไม่ แต่ในกรณีที่บางคนยังคงดิ้นรนอยู่ฉันได้เห็นว่าการเพิ่มandroid-support-v13.jarจะแก้ไขทุกอย่างได้ นี่คือวิธีที่ฉันทำ:

  1. คลิกขวาที่โครงการ -> คุณสมบัติ
  2. เลือก Java Build Path จากตารางเนื้อหาด้านซ้ายมือ
  3. ไปที่แท็บไลบรารี
  4. เพิ่มปุ่มไหภายนอกและเลือก <your sdk path>\extras\android\support\v13\android-support-v13.jar

0

สำหรับ Android Studio หรือ IntelliJ สิ่งที่คุณต้องทำคืออัปเดตการพึ่งพาของคุณใน gradle.build ฉันใช้สิ่งต่อไปนี้:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.2'
}

0

ฉันไม่รู้ว่าคุณสังเกตเห็นสิ่งนี้มากแค่ไหน ห้องสมุดสนับสนุน "appcompat_v7" และโครงการของคุณควรอยู่ในไดเรกทอรีเดียวกัน (ฉันหมายถึงไดเรกทอรีพื้นที่ทำงาน) อย่าทำความสะอาดโครงการของคุณจนกว่าข้อผิดพลาดจะไม่เป็นอย่างอื่นคุณจะมีเวลาที่ยากลำบากกับ R.java


0

คุณควรสร้างโครงการใหม่ด้วยชื่อใด ๆ จากนั้นใช้ appcompat_v7 ที่โปรแกรมสร้างใหม่

Right Click Project-> properties->Android

ในไลบรารีของส่วนAddและเลือกไลบรารีแอปคอมแพค


0

ใน eclipse คลิกขวาที่โปรเจ็กต์ของคุณ -> เลือกพา ธ บิลด์จากนั้นเลือกกำหนดคอนฟิกบิลด์พา ธ จากหน้าต่างเลือกไฟล์ jar ที่คุณต้องการและรีเฟรชโครงการของคุณ


0

โซลูชันที่ได้รับการยอมรับใช้งานได้สำหรับฉันหนึ่งครั้ง แต่ไม่ใช่ตอนนี้ ผมต้องสร้างใหม่อีกครั้งสวัสดีโลกของชนิดเดียวกัน (!) ในพื้นที่ทำงานใหม่ทำให้มันรวบรวมและจากนั้นคัดลอกไดเรกทอรีทั้งหมดรวมทั้งและ .hg แสดงให้เห็นว่า:.hgignorehg diff

-        android:targetSdkVersion="19" />
+        android:targetSdkVersion="21" />

Binary file libs/android-support-v4.jar has changed

ดูเหมือนว่า Eclipse ต้องการคอมไพล์สำหรับ API 21 และไม่สามารถทำอะไรกับ API 19 Darkly


0

ถ้าคุณได้เพิ่มAppCompatห้องสมุดและยังได้รับการอ้างอิงที่เหมาะสมของ AppCompat จากตำแหน่ง SDK ลอง"แคชโมฆะ / รีสตาร์ท"
คุณสามารถค้นหาได้จากเมนู"ไฟล์"ใน Android Studio


0

ในกรณีของฉันปัญหาเกิดขึ้นเนื่องจากฉันต้องการใช้ SDK ที่ไม่มีไลบรารีที่จำเป็น เมื่อฉันเพิ่มนาที ระดับ SDK ปัญหาหายไป แน่นอนโดยตรงรวมถึงห้องสมุดของตัวเองควรลบข้อผิดพลาดเช่นกัน


0

ลืมทุกสิ่งทุกอย่าง. เพียงใช้ไลบรารี appcompat ที่ดาวน์โหลดโดยใช้ Android Studio มันมีคำจำกัดความที่ขาดหายไปทั้งหมด ไม่ว่าคุณจะใช้ใน Eclipse หรือไม่ก็ตาม


0

ฉันมีปัญหาเดียวกันและแม้หลังจากนำเข้า / เพิ่มโถ / ไลบรารีตามที่ระบุไว้ในคำตอบแล้วก็จะไม่แก้ไขข้อผิดพลาด ฉันเพิ่งสร้างพื้นที่ทำงานใหม่และสร้างโครงการ Android ใหม่และนำเข้า appcompat_v7 โดยอัตโนมัติและไม่มีข้อผิดพลาดในการทำความสะอาดและสร้าง ไม่ต้องนำเข้า jar / library เดียวด้วยตนเอง เพียงแค่ FYI ฉันกำลังใช้ eclipse Mars.1 Release (4.5.1) และกำลังเผชิญกับปัญหาเดียวกันทุกครั้งที่ฉันสร้างโครงการ Android ใหม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.