Automatically generate Android boilerplate code from Layout XML

Java has a bit of a reputation for being too verbose which is a common stick for haters to beat it with. But as Bjarne Stroustrup says “There are only two kinds of languages: the ones people complain about and the ones nobody uses”.

But it’s a valid criticism so you want your IDE to generate the boring code for you which is where the Lazy Android Eclipse plugin from Ryan Mattison comes in. After you install it you right click on any Android Layout and select Fast Layout -> Generate Activity. It’s then supposed to write code into your class in focus but it only pastes to the clipboard for me where I can easily use in my activites of course.

So here’s my original layout XML:


<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
    <LinearLayout
         android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        >
    <RadioGroup
      android:layout_width="fill_parent"
      android:id="@+id/radio_type"
      android:layout_height="wrap_content"
      android:gravity="center"
      android:orientation="horizontal"
      android:layout_marginBottom="10dp">
      <RadioButton android:id="@+id/radio_car"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:checked="true"
          android:text="Car" />
      <RadioButton android:id="@+id/radio_motorcycle"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="Motorcycle" />
      <RadioButton android:id="@+id/radio_truck"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:checked="true"
          android:text="Truck" />
      <RadioButton android:id="@+id/radio_bus"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="Bus/Coach" />
    </RadioGroup>
    </LinearLayout>
    </ScrollView>

And here’s the code it generated:

 /**********DECLARES*************/
      private RadioGroup radio_type;
      private RadioButton radio_car;
      private RadioButton radio_motorcycle;
      private RadioButton radio_truck;
      private RadioButton radio_bus;
      /**********INITIALIZES*************/
      radio_type = (RadioGroup) findViewById(R.id.radio_type);
      radio_car = (RadioButton) findViewById(R.id.radio_car);
      radio_motorcycle = (RadioButton) findViewById(R.id.radio_motorcycle);
      radio_truck = (RadioButton) findViewById(R.id.radio_truck);
      radio_bus = (RadioButton) findViewById(R.id.radio_bus);
      /* Please visit http://www.ryangmattison.com for updates */

Very handy. Get the plugin here.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>