Take the 2-minute tour ×

I coded an android application which is measuring heart rate from camera input. I needed to desing an ECG animation to the application. I know that ECG isn't related. But I'll try to show the sign according to heart rate. Which method do I need to use? Drawing animation into a View object from layout or Drawing graphics directly to a Canvas. And if you give some clues I'll be very appreciated.

share|improve this question
add comment

2 Answers

To do real time graphing of ECG data...which is what I am coding right now, you need to create a custom view. Then in the onDraw method you use your canvas to draw a bitmap. Then inside the custom I also implement a Runnable that paints the line using drawline, and then invalidates(). I'd show you code but its proprietary since everything I found did not measure up to the speeds I had to graph.

share|improve this answer
thanks for your advice this is what I'm looking for. –  Özgün Karzan Dec 27 '11 at 12:19
add comment

It depends how real-time you need your data. If a lower framerate is sufficient, then I would recommended subclassing the View class and overriding the onDraw method. From there you can draw directly onto the canvas. Just make sure to call invalidate on the view after your data changes to make sure onDraw gets called.

If a faster framerate is required, then you probably want to use a SurfaceView. Google has a Lunar Lander example that does a good job of that. But note some bugs have been found in the example, so use it as a guide not as law.

Lunar Lander: http://developer.android.com/resources/samples/LunarLander/index.html

share|improve this answer
add comment

Your Answer


