自定义视图的主题样式

时间:2015-07-19 18:19:10

标签: android android-layout android-theme android-styles

我的应用程序有几个主题,用户可以从中选择(红色,蓝色,绿色等)。每个主题都有相应的按钮样式(RedTheme => RedButton)。 现在我创建了一个略微扩展的自定义视图" Button"不幸的是,这个按钮没有任何风格,除了我使用" style" layout.xml中的属性。 我不使用任何其他属性,我只想要应用我的Button样式。 我想做类似的事情:

 <item name="android:imageButtonStyle">@style/ImageButtonmyTimeRed</item>

我已经阅读了很多其他类似的帖子: How to: Define theme (style) item for custom widget 但我不能100%确定这个解决方案是否适合我,因为我不需要任何额外的属性。

1 个答案:

答案 0 :(得分:2)

我使用三参数超级构造函数并传递按钮样式资源ID。这适用于我的所有自定义主题。谢谢@pskink指出我正确的方向。

EntityState.Modified

我的主题看起来像这样:

public ClockButton(Context context, AttributeSet attrs) {
    super(context, attrs, R.attr.buttonStyle);
    ...
}