在Android中绘制任意对象的最佳方法是什么?

时间:2013-12-16 10:17:47

标签: android view

我最近开始构建我的第二个Android应用程序而且我已经碰壁了。我一般想知道的是这个。在我使用过的几乎所有其他编程语言中,都有一种在屏幕上任意绘制的简单方法。通常有某种Scene或Canvas类型类和另一种GraphicObject类型类。因此,如果我想绘制一个汽车,我创建一个从GraphicObject下降的类,并定义它们绘制自己,然后将Car类(对象)的实例化添加到Scene。如果我想要第二辆车,你可以通过设置某种坐标功能来实例化另一辆车并将其放在任何你喜欢的地方。如果这是一个程序,其中绘制的内容取决于用户输入,所有内容都必须以编程方式完成,因此它不依赖于编写的代码以外的任何内容。

你如何在Android中实现这一目标?据我所知,唯一可以定义绘制方式的对象是View。但是我无法简单地获取我的自定义视图(在我的情况下绘制一个矩形)并实例化其中两个,将它们放在我想要的屏幕中,并以编程的简单方式执行此操作.... / p>

感谢您的任何建议。

2 个答案:

答案 0 :(得分:0)

它在android中几乎相同,

所有小部件都是从View类继承而来的,通过扩展这个类,你可以实际创建任何你想要的限制,只有你的想象力,你可以在这里访问画布,使用它与类本身暴露的触摸控件覆盖所有你想要的行为,根据你的需要,。

http://developer.android.com/reference/android/view/View.html http://developer.android.com/reference/android/graphics/Canvas.html

答案 1 :(得分:0)

好吧,如果我想画10个矩形然后我不会实例化我的自定义View 10次。相反,我将在我的自定义View中添加逻辑,以便能够绘制10个或更多矩形。无论如何,如果您想再次绘制View中绘制的内容,则可以在setDrawingCacheEnabled(true);上致电View,然后致电getDrawingCache()以获取Bitmap它在其他地方。