我们可以在自定义视图的onDraw
方法中绘制画布中的大致所有内容。另外文档说:
当你想动态绘制一些二维图形时,a ShapeDrawable对象可能会满足您的需求。
我的问题很简单,当我们必须使用自定义视图和ShapeDrawable时?或者我们最好将它们结合起来?如果是真的,这些选项的优点和缺点是什么? < / p>
答案 0 :(得分:0)
嗯,我认为ShapeDrawable
更容易使用,因为您可以在Selector
中使用它,并创建具有自定义背景和点击动画的按钮,而无需编写任何代码(仅使用XML)。另一方面,这个drawables非常有限,如果你需要自己的控制非标准拦截,你必须创建自己的自定义View
。
所以我觉得把它们组合起来会更好,因为有时候你需要简单的东西,而ShapeDrawables
是真正快速而且很好的解决方案,但是如果你想要一些真正特殊的东西,你可以使用形状存档,这里你必须自己编写View
。