จะตั้งธีม holo dark ในแอพ Android ได้อย่างไร?


109

ฉันจะตั้งค่าธีมโฮโลมืดในแอพของฉันได้อย่างไร? ในเวลานี้ฉันได้รับสิ่งนี้:

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

แต่เมื่อฉันเปลี่ยนเป็น:

<style name="AppTheme" parent="android:Theme.Holo.Dark" />

ฉันได้รับข้อผิดพลาด error: Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Holo.Dark'.

จะแก้ปัญหาอย่างไร?


ทรัพยากรอะไรผิดพลาด บรรจง ...
waqaslam

1
ข้อผิดพลาด: ข้อผิดพลาดในการเรียกข้อมูลพาเรนต์สำหรับรายการ: ไม่พบทรัพยากรที่ตรงกับชื่อที่กำหนด 'android: Theme.Holo.Dark'
gurehbgui

คำตอบ:


219

เปลี่ยนparent="android:Theme.Holo.Dark" เป็นparent="android:Theme.Holo"

ธีม holo dark เรียกว่า Holo


1
ฉันใช้เวลาสองสามวันในการค้นหาโพสต์นี้ เมื่อเปลี่ยนธีมเป็น Holo การแสดงตัวอย่างจะทำงานได้ดี แต่ใน styles.xml ฉันได้รับพาเรนต์ที่มีการเพิ่ม ".Dark" ไม่ถูกต้อง และนั่นคือเหตุผลที่มันยังคงแสดงธีมสีขาว เพิ่มรายงานข้อบกพร่องสำหรับสิ่งนี้ ...
Yster

ปรากฎว่าการเปลี่ยนธีมการแสดงตัวอย่างไม่มีผลกับไฟล์ใด ๆ เป็นเพียงการดูตัวอย่างว่าธีมนั้นมีลักษณะอย่างไร
Yster

29

โดยค่าเริ่มต้น Android จะตั้งค่า Holo เป็นธีม Dark ไม่มีธีมที่เรียกว่า Holo.Dark มีเพียง Holo.Light นั่นคือเหตุผลที่คุณได้รับทรัพยากรไม่พบข้อผิดพลาด

ดังนั้นเพียงตั้งค่าเป็น:

<style name="AppTheme" parent="android:Theme.Holo" />

8

ตาม android.com คุณจะต้องตั้งค่าในไฟล์ AndroidManifest.xml:

http://developer.android.com/guide/topics/ui/themes.html#ApplyATheme

การเพิ่มแอตทริบิวต์ธีมให้กับองค์ประกอบแอปพลิเคชันของคุณได้ผลสำหรับฉัน:

--AndroidManifest.xml--

...

<ใบสมัคร ...

  android:theme="@android:style/Theme.Holo"/>
  ...

</application>


แม้ว่านั่นจะเป็นวิธีแก้ปัญหาที่ใช้งานได้ .... แต่ก็เป็นแนวทางปฏิบัติที่ดีในการ
รักษาการ

2

ในไฟล์รายการ android ของแอปพลิเคชันของคุณภายใต้แท็กแอปพลิเคชันคุณสามารถลองใช้ธีมเหล่านี้ได้หลายแบบ

แทนที่

<application
    android:theme="@style/AppTheme" >

ด้วยธีมที่แตกต่างกันที่กำหนดโดยระบบ Android พวกเขาสามารถเป็นเช่น: -

android:theme="@android:style/Theme.Black"
android:theme="@android:style/Theme.DeviceDefault"
android:theme="@android:style/Theme.DeviceDefault.Dialog"
android:theme="@android:style/Theme.Holo"
android:theme="@android:style/Theme.Translucent"

แต่ละธีมเหล่านี้จะมีผลแตกต่างกันไปในแอปพลิเคชันของคุณเช่น DeviceDefault Dialog จะทำให้แอปพลิเคชันของคุณดูเหมือนกล่องโต้ตอบ คุณควรลองมากกว่านี้ คุณสามารถดูได้จาก android sdk หรือใช้การเติมอัตโนมัติใน Eclipse IDE เพื่อสำรวจตัวเลือกต่างๆที่มี

วิธีที่ถูกต้องในการกำหนดธีมของคุณเองคือการแก้ไขstyles.xmlไฟล์ที่อยู่ในโฟลเดอร์ทรัพยากรของแอปพลิเคชันของคุณ


1
ใช่วิธีที่ถูกต้องคือแก้ไข styles.xml เพื่อตั้งค่าธีม เช่น: <ชื่อ style = "AppBaseTheme" พ่อแม่ = "หุ่นยนต์: Theme.Holo">
เซ้นส์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.