如何覆盖OnDraw方法?

时间:2012-08-25 14:48:12

标签: android override drawrect ondraw

我有一个OnDraw方法,它绘制一组矩形[就像室内地图]。在触摸事件中,调用一个新的Activity Intent。调用新活动后,我想知道如何重绘矩形在buttonClick事件上(在地图中显示一条新路径)。

下面我已经提到了我到目前为止所做的事情。

  • 1.我使用DrawRect()
  • 在表面视图上绘制了一个地图
  • 2.然后我抓住了矩形坐标onTouch事件
  • 3.使用webService,我计算到某个位置的最短路径
  • 4.捕捉到触摸的矩形坐标后,我跳转到一个新的活动
  • 5.当我点击新活动
  • 上的A按钮时,我想重绘我的地图(包括路径)

请介绍一下如何覆盖和重绘On Draw方法???

谢谢!

1 个答案:

答案 0 :(得分:0)

如果我理解正确,我认为您只需要在视图上调用View.invalidate()以使其重新绘制。但是,我很困惑你为什么要转换活动。听起来你应该在AsyncTask中进行webservice调用然后在它的onPostExecute()中,在你的视图上调用invalidate(),使其重新绘制你现在提供的任何数据。

然而,听起来你可能没有实际实现自己的View类,而是直接绘制到surfaceView?我会读到如何创建自己的View子类。这真的不是那么难。