Annyce Davis

ones and zeros

  • Home
  • Public Speaking
  • About Me
  • Courses
  • Life

Android Annotations: Brief Overview and a Simple Example

March 10, 2014 by Annyce Davis Leave a Comment

Android Annotations is a project which allows you to use simple Java Annotations in your Android classes and have the compiler generate some of the “boilerplate code” for you.  I have not noticed any overhead in the application’s performance so far and I really like how neat the code is, when compared to some of the default code that is typical in Android applications.

Here is an example of creating an activity and then performing a simple operation using a bean to load data:

@EActivity(R.layout.main)
@OptionsMenu(R.menu.main_menu)
@Fullscreen
public class MainActivity extends Activity {

@Bean(MyAPIImpl.class)
MyAPI mAPI;

@AfterInject
void loadData() {
mAPI.getData();
}

@Click(R.id.startButton)
void startClicked() {
NextActivity_.intent(this).start();
}
}

So what you’ll notice in the code is that it’s very clear what this Activity is doing, no need to scroll through lists of Views being initialized and endless availability checks.  Also, the click listeners that are normally splattered throughout the code is contained in a simple method with the @Click annotation. Here you just define the resource id of the item that you would like to associate with the click event and then a method to handle the click.

Furthermore, this Activity references a view in the R.layout.main layout file, without having to define the typical onCreate() method. It also defines which menu file it’s going to use with the @OptionsMenu annotation. Pretty simple, right?  In a future post I will show additional examples of how using AndroidAnnotations makes your code more maintainable. Have you tried this library yet? If so, please let me know what you think. Curious to find out what others think of it.

Share this:

  • Click to share on Twitter (Opens in new window)
  • Click to share on Facebook (Opens in new window)
  • Click to share on LinkedIn (Opens in new window)
  • More
  • Click to share on Mastodon (Opens in new window)

Related

Filed Under: Android Tagged With: Annotations, Compiler

Follow Me

Each year there's a new version of the Android SDK released. Along with the myriad of new features come deprecations. When something is deprecated, although … [Read More...]

I didn't intentionally aim to create a rhyming title, but there you have it. Each year, I look forward to Google I/O like a kid going back to school. This year … [Read More...]

Categories

  • Android (56)
  • Career (2)
  • Communication (4)
  • Flutter (1)
  • Git (4)
  • Gradle (4)
  • Grails (23)
  • Java (8)
  • JavaScript (6)
  • Kotlin (17)
  • Life (4)
  • Public Speaking (24)
  • RxJava (1)
  • Software Development (8)
  • Twitter (3)
  • Uncategorized (11)
  • Video Course (5)

Follow Me

Archives

Categories

Copyright © 2023 · Beautiful Pro Theme on Genesis Framework · WordPress · Log in