user13267
user13267

Reputation: 7193

How does the onDraw(Canvas) function of the View class work?

I need to implement an interactive graph in Android
For a start I am trying to see how this code works
There, in a class called LineChartView Which extends the user generated class ChartView which extends the View class, there is an @overrideed function called onDraw(Canvas canvas). How and when does this function get called? the output of that code is a bunch of graphs on full screen, but my interactive graph should only take up a part of the screen. Does the onDraw() function get called automatically? If so, when? And what is the size of the canvas? Is it always the full screen occupied by the current activity's window?

Upvotes: 1

Views: 883

Answers (1)

JRowan
JRowan

Reputation: 7104

in this link View Android Developer there is a section on implementing a custom view

onDraw(Canvas canvas) is called whenever a view should render its content

if you define to use this view in your layout xml or even in code you can specify the attributes

android:layout_width=
android:layout_height=

and those attributes will be applied to the size that the view will use

in your layout.xml

<your.package.name.extendedviewclass
android:layout_width="100dp"
android:layout_height="100dp"/>

Upvotes: 1

Related Questions