RoboGuice is a framework that brings the simplicity and ease of Dependency Injection to Android, using Google’s own Guice library.
The first you download
roboguice-2.0.jar
guice-3.0-no_aop.jar
jsr305-1.3.9.jar
Add the required libraries to the libs folder of you new android project.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".TheDeveloperWorldIsYours" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /></RelativeLayout> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | package com.thedeveloperworldisyours.inject;import com.google.inject.Inject;import android.os.Bundle;import android.view.Menu;import roboguice.activity.RoboActivity;import roboguice.inject.InjectResource;import roboguice.inject.InjectView;import android.location.LocationManager;import android.widget.TextView;public class TheDeveloperWorldIsYours extends RoboActivity { @InjectView(R.id.text) TextView name; @InjectResource(R.string.app_name) String myAppName; @InjectResource(R.string.action_settings) String myActionSettings; @InjectResource(R.string.hello_world) String myHelloWorld; @Inject LocationManager loc; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_the_developer_world_is_yours); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.the_developer_world_is_yours, menu); return true; } } |