在烤面包上设置背景颜色使其成为矩形

时间:2014-01-08 14:58:21

标签: android

如果我使用

设置Toast的背景颜色
            t.getView().setBackgroundColor(
                    ctx.getResources().getColor(R.color.myorange));

新的(Android 4.4)圆形Toast变成矩形。除了使用自定义的舍入背景Drawable之外,还有什么方法可以防止这种情况发生?

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:2)

没有办法阻止这种情况。 toast的默认背景是一个drawable,用于定义圆角。如果你想要一个不同颜色的圆角,你必须定义自己的形状drawable。

答案 1 :(得分:0)

请勿尝试直接设置背景颜色,而应设置滤色器。这样可以保留烤面包的形状:

int backgroundColor = ResourcesCompat.getColor(t.getView().getResources(), R.color.myorange, null);
t.getView().getBackground().setColorFilter(backgroundColor, PorterDuff.Mode.SRC_IN);