2011-04-10 64 views
2

我正在主题化我的应用程序,并且我希望在选择时将效果添加到列表视图项目。虽然我已经成功地完成了文本颜色的主题,但我还想在按下时更改文本大小本身。Android:根据主题/样式更改选择器字体大小

我可以通过代码设置它吗?

回答

1

你不得不做,在说一种风格或布局文件中的资源:

这不是错别字进行测试,等...

这里有一个简单的例子:

<resources> 
    <!-- Theme Variables that can be used in any style, etc.. --> 
    <attr name="branded_text_color" format="reference" /> 
    <attr name="branded_text_size" format="reference" /> 
    <attr name="branded_background_color" format="reference" /> 
    <attr name="branded_icon_drawable" format="reference" /> 

    <!-- Themes --> 
    <style name="theme_alpha" parent="@android:Theme"> 
     <item name="branded_text_color">@color/alpha_text_color</item> 
     <item name="branded_text_size">18sp</item> 
     <item name="branded_background_color">@color/alpha_background_color</item> 
     <item name="branded_icon_drawable">@drawable/alpha_icon</item> 
    </style> 
    <style name="theme_beta" parent="@android:Theme"> 
     <item name="branded_text_color">@color/beta_text_color</item> 
     <item name="branded_text_size">24sp</item> 
     <item name="branded_background_color">@color/beta_background_color</item> 
     <item name="branded_icon_drawable">@drawable/beta_icon</item> 
    </style> 

    <!-- Text Style --> 
    <style name="title_font" parent="@android:style/TextAppearance.Large"> 
     <item name="android:textColor">?branded_text_color</item> 
     <item name="android:textSize">?branded_text_size</item> 
     <item name="android:background">?branded_background_color</item> 
     <item name="android:padding">10dip</item> 
    </style> 
</resources>