เมื่อฉันใช้ drawables จากAppCompatไลบรารีสำหรับToolbarรายการเมนูของฉันการย้อมสีจะทำงานตามที่คาดไว้ แบบนี้:
<item
android:id="@+id/action_clear"
android:icon="@drawable/abc_ic_clear_mtrl_alpha" <-- from AppCompat
android:title="@string/clear" />
แต่ถ้าฉันใช้ drawables ของฉันเองหรือแม้แต่คัดลอก drawables จากAppCompatไลบรารีไปยังโปรเจ็กต์ของฉันเองมันจะไม่ย้อมสี
<item
android:id="@+id/action_clear"
android:icon="@drawable/abc_ic_clear_mtrl_alpha_copy" <-- copy from AppCompat
android:title="@string/clear" />
มีเวทมนตร์พิเศษบางอย่างในAppCompat Toolbarสีที่วาดได้จากห้องสมุดนั้นหรือไม่? มีวิธีใดบ้างที่จะทำให้สิ่งนี้ใช้งานได้กับ drawables ของฉันเอง?
เรียกใช้สิ่งนี้บนอุปกรณ์ API ระดับ 19 ด้วยcompileSdkVersion = 21และtargetSdkVersion = 21และยังใช้ทุกอย่างจากAppCompat
abc_ic_clear_mtrl_alpha_copyเป็นสำเนาที่ถูกต้องของabc_ic_clear_mtrl_alphapng จากAppCompat
แก้ไข:
การย้อมสีจะขึ้นอยู่กับค่าที่ฉันตั้งไว้android:textColorPrimaryในธีมของฉัน
เช่น<item name="android:textColorPrimary">#00FF00</item>จะให้สีโทนเขียวแก่ฉัน
ภาพหน้าจอ
การย้อมสีทำงานตามที่คาดไว้ด้วย AppCompat

การย้อมสีไม่ทำงานกับ drawable ที่คัดลอกมาจาก AppCompat
