以编程方式将样式应用于MaterialButton无效

时间:2018-11-07 06:53:38

标签: android material-design android-jetpack

我正在尝试扩展MaterialButton类以进行自定义实现。我找不到以编程方式应用样式的方法。

当前类如下:

public class CustomThemedButton extends MaterialButton {
    public CustomThemedButton(Context context) {
        super(context, null, R.style.button);
        init();
    }

    public CustomThemedButton(Context context, AttributeSet attrs) {
        super(context, attrs, R.style.button);
        init();
    }

    public CustomThemedButton(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, R.style.button);
        init();
    }


private void init() {
    setCornerRadius(getContext().getResources().getDimensionPixelSize(R.dimen.button_corner_radius));
    setStrokeColorResource(R.color.button_border_color);
    setStrokeWidth(getContext().getResources().getDimensionPixelSize(R.dimen.button_stroke_width));
}

此方法在扩展AppCompat按钮时似乎可以使用;但是,您将失去MaterialButton的所有功能。此方法不会将自定义样式元素应用于MaterialButton。任何帮助将不胜感激。

0 个答案:

没有答案