从理论上讲很简单。我想更改烤面包的背景颜色(android:minSdkVersion =“ 14” android:targetSdkVersion =“ 18”)。我做了什么?我找到了Theme.Holo.Light定义,用作自己的样式的父项:
Theme.Holo.Light definition
接下来,我发现:
<item name="android:toastFrameBackground">
Nest我想修改它:
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="MyTheme" parent="android:Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyActionBarStyle</item>
<item name="android:toastFrameBackground">@android:color/holo_blue_light</item>
等等
对于Action Bar而言,它可以正常工作,而对于toastFrameBackground Eclipse,则始终显示:
错误:错误:找不到与给定名称匹配的资源:attr'android:toastFrameBackground'。 styles.xml Android AAPT问题
我什至将其设置为原始版本(仅从原始主题定义中复制):
<item name="toastFrameBackground">@android:drawable/toast_frame</item>
希望它能工作。没门。
当我单击ctr + space Eclipse时,似乎看不到toastFrameBackground。为什么?我检查了原始主题定义中的其他项目,其中一些似乎可见,而其他项目则没有。
任何想法?救命?
我花了3-4个小时,什么也没花……可能我会保留原始的吐司背景色,因为似乎不值得打架,但我希望更深入地了解该机制。为什么我无权访问该项目,看来我应该有权访问。
最佳答案
这是因为未导出toastFrameBackground
且未将其创建为public.xml
,这意味着此属性不适用于非平台/第三方应用程序。
但是,您可能想要查看https://stackoverflow.com/a/9903465/1893766以了解您要实现的目标。