/androidannotations

Simple and powerful Android code!

Primary LanguageJavaOtherNOASSERTION

"The ratio of time spent reading [code] versus writing is well over 10 to 1 [therefore] making it easy to read makes it easier to write." - Robert C. Martin

#Is your Android code easy to write, read, and maintain?

@EActivity(R.layout.translate) // Sets content view to R.layout.translate
public class TranslateActivity extends Activity {

    @ViewById // Injects R.id.textInput
    EditText textInput;

    @ViewById(R.id.myTextView) // Injects R.id.myTextView
    TextView result;

    @AnimationRes // Injects android.R.anim.fade_in
    Animation fadeIn;

    @Click // When R.id.doTranslate button is clicked 
    void doTranslate() {
         translateInBackground(textInput.getText().toString());
    }

    @Background // Executed in a background thread
    void translateInBackground(String textToTranslate) {
         String translatedText = callGoogleTranslate(textToTranslate);
         showResult(translatedText);
    }
   
    @UiThread // Executed in the ui thread
    void showResult(String translatedText) {
         result.setText(translatedText);
         result.startAnimation(fadeIn);
    }

    // [...]
}

AndroidAnnotations provide those good things for less than 50kb, without any perf impact!

Android Annotations Logo Get Started, then read the cookbook

Apps already using AndroidAnnotations

Your app here VuzZz App EasyShare Capico Magic 8 Ball
Your app here VuzZz App EasyShare Logo Capico Logo Magic 8 Ball Logo
Light Saber Jedi Electric Shaver SMS Scheduler Coin Flip Screen broken
Light Saber Jedi Logo Electric Shaver Logo SMS Scheduler Logo Coin Flip Screen broken
Application Du Jour Air Horn Tao Po Report Your Love Mobilogue
Application Du Jour Air Horn Logo Tao Po Report Your Love Mobilogue
SunShine Horoscope iLive Share via HTTP
SunShine Horoscope iLive Share via HTTP

Sponsors

Built on DEV@cloud Supported by eBusiness Information (Excilys Group)

The project logo is based on the Android logo, created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License.

Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.