Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Layout: Is reusable component UI possible?

I'll preface this with, I've just started learning Android so be gentle. I come from an ASP.NET / Silverlight background so I was looking for something along the lines of controls.

I want to reuse a layout (a ListView item template) in other layouts.

Such that in my other layouts I can just add <myListItem /> to show it.

Is this, or anything like it possible? or are there better ways?

like image 516
Tristan Warner-Smith Avatar asked Feb 18 '10 15:02

Tristan Warner-Smith


1 Answers

This is very possible; you just need to use the <include /> tag. Basically, you put your layout in a file, then you do:

<include layout="@layout/my_list_item_template" />

Romain Guy goes into detail on how to use it here: http://www.curious-creature.org/2009/02/25/android-layout-trick-2-include-to-reuse/

(Android documentation)

(I am assuming that what you want is a reusable layout, not a custom component. The difference being, a reusable layout is like reusing snippets of standard components, whereas a custom component is used when you need to extend the functionality of a particular widget, like a TextView or Button. If you want a custom component, then you'll have to do a lot more legwork to Erich Douglass' answer for more on that.)

like image 72
Dan Lew Avatar answered Nov 22 '22 16:11

Dan Lew