android – 如何从drawable引用到样式

android – 如何从drawable引用到样式,第1张

概述带有标签的我的应用有两个主题.在每个主题中,选项卡具有处​​于选定和未选定状态的不同图像.我如何通过主题正确引用图像? 例如.我有themes.xml <?xml version="1.0" encoding="utf-8"?><style name="LightTheme" parent="@android:style/Theme.Light"> <item name="tabSho 带有标签的我的应用有两个主题.在每个主题中,选项卡具有处​​于选定和未选定状态的不同图像.我如何通过主题正确引用图像?

例如.我有themes.xml

<?xml version="1.0" enCoding="utf-8"?><style name="lighttheme" parent="@androID:style/theme.light">    <item name="tabShows">@drawable/ic_tab_shows_unselected_light</item>    <item name="tabShowsSelected">@drawable/ic_tab_shows_selected_light</item>    <item name="tabNews">@drawable/ic_tab_news_selected_light</item>    <item name="tabNewsSelected">@drawable/ic_tab_news_unselected_light</item></style><style name="Darktheme" parent="@androID:style/theme.Black">    <item name="tabShows">@drawable/ic_tab_shows_unselected_dark</item>    <item name="tabShowsSelected">@drawable/ic_tab_shows_selected_dark</item>    <item name="tabNews">@drawable/ic_tab_news_selected_dark</item>    <item name="tabNewsSelected">@drawable/ic_tab_news_unselected_dark</item>   </style>

我还有一个tab_shows.xml和tab_news.xml

<selector xmlns:androID="http://schemas.androID.com/apk/res/androID"><item  androID:state_selected="true" androID:drawable="@drawable/ic_tab_shows_selected_light"/><item  androID:state_selected="false" androID:drawable="@drawable/ic_tab_shows_unselected_light" />

如何根据当前主题在选择器中引用所需的图像?
这不适合我

<selector xmlns:androID="http://schemas.androID.com/apk/res/androID"><item  androID:state_selected="true" androID:drawable="?tabShowsSelected"/><item  androID:state_selected="false" androID:drawable="?tabShows" />

在布局文件中这是有效的,我的意思是通过?stylename引用样式

解决方法 建立你的风格A和风格B.

在你的情况下你把androID:drawable =“@ drawable / ic_tab_shows_selected_light”而不是背景(我只是从我的代码中复制了snipets)

#000

<style name="styleB">        <item name="androID:background">#000</item>    </style>

你的主题A.

<style name="theme.A">        <item name="pageBackground">@style/styleA</item>    </style>

主题B.

<style name="theme.Blue">        <item name="pageBackground">@style/styleB</item>    </style>

在你的attr.xml中

<?xml version="1.0" enCoding="utf-8"?><resources>    <attr name="pageBackground" format="reference" /></resources>

最后在你的小部件中你做了style =“?pageBackground”

总结

以上是内存溢出为你收集整理的android – 如何从drawable引用到样式全部内容,希望文章能够帮你解决android – 如何从drawable引用到样式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1139137.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存