Android: Soll ich einen leeren Konstruktor zu einem in ViewPager verwendeten Fragment hinzufügen?

8

Ich mache ein Layout, ähnlich wie bei Google Play. Ich verwende einen ViewPager, der Fragmente benötigt. Ich bin jetzt ein wenig verwirrt, weil einige Seiten sagen, dass ein Fragment einen leeren Konstruktor benötigt, aber das Beispiel auf developer.android.com enthält keinen Konstruktor. Dort ist Code wie folgt:

%Vor%

Muss also ein Konstruktor in ein Fragment eingefügt werden oder kann ich den Konstruktor einfach weglassen?

    
Xander 07.03.2013, 16:47
quelle

2 Antworten

10

Der Java-Compiler fügt automatisch einen Standard-Konstruktor ohne Argumente (der "leere Konstruktor", auf den Sie in der Frage verweisen) zu jeder Klasse hinzu, die keinen Konstruktor aufweist.

Die folgende leere Klasse:

%Vor%

entspricht der folgenden Klasse mit einem Konstruktor ohne Argumente mit einem leeren Text:

%Vor%

Sie müssen explizit einen Konstruktor ohne Argumente hinzufügen, wenn Sie einen anderen Konstruktor mit einem oder mehreren Argumenten einschließen, da der Compiler dies in diesem Fall nicht für Sie hinzufügt.

    
Giulio Piancastelli 07.03.2013, 16:52
quelle
1

Wenn Sie keinen Konstruktor hinzufügen, verweist das Aufrufen eines Konstruktors auf den Superkonstruktor (wie beim Erstellen eines leeren Konstruktors). Aber wenn Sie irgendeinen anderen Konstruktor erzeugen (nicht gewünscht mit Fragmenten, tun Sie, was Sie in onCreate tun wollen, wird Ihr Fragment nicht immer instanziiert, manchmal instanziiert das System das Fragment und der leere Konstruktor wird aufgerufen) als Sie muss auch eine leere zur Verfügung stellen.

    
RCB 07.03.2013 16:50
quelle