使用ScaleDrawable缩放对我不起作用。
可拉图保持相同的尺寸。
LayerDrawable layerDrawable = new LayerDrawable(layers);
Drawable d = layerDrawable.getCurrent();
ScaleDrawable sd = new ScaleDrawable(d, 0, 0.01f, 0.01f);
return sd.getDrawable();
我需要做些什么来解决它? 感谢。
答案 0 :(得分:6)
您需要设置level:
LayerDrawable layerDrawable = new LayerDrawable(layers);
Drawable d = layerDrawable.getCurrent();
ScaleDrawable sd = new ScaleDrawable(d, 0, 0.01f, 0.01f);
sd.setLevel(8000);
return sd;
级别范围从0到10000:10000是全尺寸,0时根本不显示。
答案 1 :(得分:2)
如果您检查ScaleDrawable
的{{3}},您会看到getDrawable
方法返回基础drawable。也就是说,它会在您的情况下返回d
。您应该返回sd
,因为它已经是Drawable
。