如何在调用Drawable.draw(canvas)时隐藏drawable?

时间:2012-01-01 05:11:52

标签: android drawing visibility drawable

我发现调用Drawable.setVisible(false, false)无效。

调用Drawable.setVisible(false, false)会导致在下次调用Drawable.draw(canvas)时隐藏drawable吗?

2 个答案:

答案 0 :(得分:4)

我通常会将整个视图设置为invisible,然后使其无效。这对我的项目来说更干净。你试过setVisible(false,true)吗?也许它没有像预期的那样令人耳目一新。

或者你可以通过设置drawable的alpha来完成所需的效果,试试方法myDrawable.setAlpha(0);

答案 1 :(得分:4)

在过渡期间,我在sdk代码中挖掘并且我对此没有100%的信心,但它看起来可见性属性仅用于动画目的的drawables。另外,如果需要可见性控制,开发人员负责通过

实现

(1)调用invalidate()强制画布重绘和 (2)当框架调用draw()时,不将drawable绘制到画布上。

基本上,要隐藏一个drawable,不要画它。