如何从代码中改变样式?想要实现皮肤

时间:2011-05-25 09:43:18

标签: android skinning

如何从代码中更改样式?

我的应用程序中使用的样式适用于所有按钮。如果用户更改了应用程序的外观,则此样式的背景应该更改。

<style name="ActionBtn">
    <item name="android:layout_width">@dimen/action_btn_width</item>
    <item name="android:layout_height">@dimen/action_btn_height</item>
    <item name="android:background">@drawable/btn_frame_bgstate</item>
    <item name="android:padding">@dimen/action_btn_padding</item>
    <item name="android:layout_margin">@dimen/action_btn_margin</item>
</style>

到目前为止,我唯一的想法就是创建一个自定义按钮,它自己选择创建时的背景。

我还没有找到任何好的,通用的方法来设置Android应用程序,但是如果我可以从代码中更改样式,那就可以了。

欢迎所有建议!

1 个答案:

答案 0 :(得分:0)

1)为你的皮肤创建不同的主题。

2)使用onCreate方法中的以下代码以编程方式设置这些主题。

setTheme(resid);

resid是您主题的ID。