Ich lese Dokumentation über Dagger2. Die Sache ist, ich klar haben, wie eine Klasse injizieren wie hat Context
this
Dolch2 alles injizieren?
mit Aber meine Zweifel ist mit der folgenden Klasse zum Beispiel:
public class SocialControler{
private ImageView twitterLogo;
private ImageView googleLogo;
public SocialControler(ImageView twitter, ImageView google){
twitterLogo = twitter;
googleLogo = google;
}
//Getters and Setters
}
Also in meinem MainActivity
Ich werde
SocialControler mSocial = new SocialControler(mTwitterLogo, mGoogleLogo);
Sollte ich diese Klasse unter Verwendung @Inject
Anotation statt new
, so nicht mehr new
auf unserer Aktivität injizieren? Wenn ja Wie?
Ich bin in der @Mudule
stecken. Wie kann ich einen Einblick in de Module
bieten?
@Module
public class AppModuleSocialMediaManager {
@Provides
public MainActivity provideActivity(){
return new MainActivity();
}
@Provides
public SocialMediaClickManager provideMediaManager(MainActivity mainActivity, View twitterLogo, View googleLogo) {
return new SocialMediaClickManager(mainActivity);
}
@Provides
public View provideTwitter(){
return ?
//from here how I can provide a View
}
}
ich eigentlich nicht bekommen, was Sie wollen, aber Sie können die Ansicht bieten Passieren der MainActivity als Parameter wie '@Provides public View provideTwitter (MainActivity activity) {...}' – Blackkara
Ich möchte wissen, ob wir vermeiden müssen, neue in unserem Code zu verwenden und @inject für alle Klassen, die wir verwenden dagger2 – JoCuTo