Android: Custom view based on layout: how?
-
24-09-2019 - |
Question
I am building a Android app and I am a bit struggling with custom Views.
I would like to have a reusable View that consist of a few standard layout elements. Let's say a relativelayout with some buttons in it.
How should I proceed. Should I create a custom view class that extends RelativeLayout and programmaticly add those buttons? I would think that's a bit overkill?
What's the way to do it properly in Android?
Solution
Here are some rough steps regarding one way to create a custom aggregate view:
- extend RelativeLayout
- Provide a constructor in your new class that accepts Context and AttributeSet, making sure to call the superclass first. Do no add anything at this point. Wait until the next step.
- override the onFinishInflate method, where you can add your contents through Java code or inflating an XML resource
- Add any event handlers, etc
Optionally create a resources file if your widget will require attributes to be set.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow