So generieren Sie automatisch Getter und Setter in Android Studio

294

Gibt es in Android Studio eine Verknüpfung zum automatischen Generieren der Getter und Setter in einer bestimmten Klasse?

Ajay S.
quelle

Antworten:

522

Mit Alt+ Insertfür Windows oder Command+ Nfür Mac im Editor können Sie problemlos Getter- und Setter-Methoden für alle Felder Ihrer Klasse generieren. Dies hat den gleichen Effekt wie die Verwendung der Menüleiste -> Code->Generate...

Geben Sie hier die Bildbeschreibung ein

Wählen Sie dann mit der Umschalt- oder Steuertaste alle Variablen aus, die Sie zum Hinzufügen von Gettern und Setzern benötigen

Ajay S.
quelle
77
Für diejenigen auf Macs ist es Steuerung + Eingabe.
Anita
Gibt es eine Möglichkeit, Getter und Setter wie ivar _username und Getter und Setter zu erstellen? Sind getUsername und setUsername?
Nicolas Manzini
Auf Mac Control + n
Alon Kogan
2
Für Java funktioniert es gut. Aber ich benutze Kotlin in Android Studio für die App-Entwicklung. Wie kann man dann Getter / Setter wie Java generieren?
SIVAKUMAR.J
2
wie man Getter und Setter für die Kotlin-Klasse generiert
Ashik Azeez
82

In OSX + Nstandardmäßig + .

Klicken Sie mit der rechten Maustaste und wählen Sie "Generieren ...", um die aktuelle Zuordnung anzuzeigen. Sie können mehrere Felder auswählen, für die in einem Schritt Getter / Setter generiert werden sollen.

Siehe http://www.jetbrains.com/idea/webhelp/generating-getters-and-setters.html

Vasiliy Kulakov
quelle
29

Android Studio & OSx :

Presse cmd+ n> Generate>Getter and Setter

Android Studio & Windows :

Presse Alt+ Insert> Generate>Getter and Setter

Jorgesys
quelle
Gerade unter Windows getestet Alt + Umschalt + S + R funktioniert nicht und Rechtsklick enthält keine Quelle. Ist es vielleicht ein benutzerdefiniertes Setup?
Anthea
Ich habe den Win-Bereich repariert! :)
Jorgesys
8

Sie können Getter und Setter durch die folgenden Schritte generieren:

  • Deklarieren Sie zuerst Variablen.
  • Klicken Sie auf der Tastatur auf ALT+ Insertund platzieren Sie den Cursor auf dem Teil der Variablendeklaration
  • Wählen Sie nun den Konstruktor aus, drücken Sie Ctrl+ Aauf der Tastatur und klicken Sie auf Enter, um den Konstruktor zu erstellen.
  • Platzieren Sie nun den Cursor erneut in der nächsten Zeile der Konstruktorschließklammer, klicken Sie auf ALT+ INSERTund wählen Sie Getter und Setter aus. Drücken Sie erneut CTRL+ A, um alle Variablen auszuwählen und zu drücken Enter.

Das ist es. Viel Spaß beim Codieren !!

Rushi Ayyappa
quelle
8
  • Erstellen Sie die Variable
  • Rechtsklick
  • Wählen Sie "Generieren" und dann die Option "Getter and Setter"

Rechtsklick-Menü

Engelo Polotto
quelle
Irgendeine Abkürzung für Kotlin-Konstruktoren ? Alt + Ins zeigt mir nicht die Option Konstruktoren generieren.
Arbaz.in
Hast du es versucht Alt + Enter?
Angelo Polotto
In diesem Fall weiß ich nicht, was los ist. Haben Sie Ihr Problem im Intellij-Forum veröffentlicht?
Angelo Polotto
Wenn Sie die Lösung gefunden haben, teilen Sie sie bitte hier mit.
Angelo Polotto
8

Android Studio & Windows:

fn+ alt+insert

Bild des Menüs

user6696469
quelle
1
Ihr Bild wurde im Beitrag nicht korrekt angezeigt und Sie haben keine Bildbeschreibung ausgefüllt. Hier steht "Bildbeschreibung hier eingeben".
LordWilmore
6

Positionieren Sie den Cursor unter den Variablen -> Rechtsklick -> Generieren -> Getter und Setter -> Wählen Sie die Variablen aus, die abgerufen und festgelegt werden sollen

oder

Alt + Einfügen -> Getter und Setter -> Wählen Sie die Variablen

Baby
quelle
Die Frage war, ob es möglich ist, Getter und Setter mit einer einzigen Verknüpfung zu generieren, also nicht, wo Sie diese Option in einem Menü finden können.
R Pelzer
Ich habe es nicht verstanden. Alt + Einfügen -> Getter und Setter -> Wählen Sie die Variablen
Baby
5

Wie hier erwähnt , können Sie die Getter / Setter-Generierung auch so anpassen, dass Präfixe und Suffixe (z. B. m, z. B. Variablen) berücksichtigt werden. Gehen Sie zu File->Settingsund erweitern Sie Code Style, wählen Sie Javaund fügen Sie Ihre Präfixe / Suffixe unter der Code GenerationRegisterkarte hinzu.

Shane Spoor
quelle
4

Sie können das AndroidAccessorsPlugin von verwenden Android Studio, um Getter und Setter ohne m als Präfix für Methoden zu generieren

Beispiel: mId; Wird erzeugen getId()und setId()anstelle von getmId()undsetmId()

Plugin Screenshot

ColdFusion
quelle
4

Diese Antwort befasst sich mit Ihrer Frage, ist jedoch keine genaue Antwort darauf. =) Es ist eine interessante Bibliothek, die ich kürzlich herausgefunden habe und die ich mit Ihnen teilen möchte.


Projekt Lombok können gängige Methoden erzeugen, wie Getter, Setter, equals()und hashCode(), toString()automatisch für Ihre Klassen. Es ersetzt sie durch Anmerkungen, die den Code der Boilerplate reduzieren. Um ein gutes Beispiel für Code zu sehen, der mit Lombok geschrieben wurde, schauen Sie sich ein Video auf der Hauptseite an oder lesen Sie diesen Artikel .

Die Android-Entwicklung mit Lombok ist einfach und macht Ihre Android-Anwendung nicht "schwerer", da Lombok nur zur Kompilierungszeit verfügbar ist. Es ist wichtig, dass Sie Ihr Android-Projekt richtig konfigurieren .

Ein anderes Beispiel:

import lombok.Getter;
import lombok.Setter;

public class Profile {

  @Getter @Setter
  private String username;

  @Getter @Setter
  private String password;

}

Android-Entwicklung mit Lombok ist möglich. Lombok sollte nur eine Abhängigkeit zur Kompilierungszeit sein, da sonst die Gesamtheit von Lombok in Ihren DEX-Dateien landet und wertvollen Speicherplatz verschwendet. Gradle-Snippet:

dependencies {
    compileOnly "org.projectlombok:lombok:1.16.18"
}

Darüber hinaus möchten Sie möglicherweise das Lombok IntelliJ-Plugin hinzufügen , um Lombok-Funktionen in Ihrer IDE zur Entwicklungszeit zu unterstützen. Es gibt auch eine Hrisey- Bibliothek, die auf Lombok basiert. Einfach ausgedrückt, es ist Lombok + Parcellable-Unterstützung.

naXa
quelle
1
Leider bricht Project Lombok in Android-Bibliotheksprojekten ab. Es ist momentan unzuverlässig.
IgorGanapolsky
1
@IgorGanapolsky irgendeinen Beweis?
Artem Novikov
1
@IgorGanapolsky Project Lombok funktioniert gut mit Android. Siehe Installationsanleitung .
NaXa
3

Verwenden Sie Ctrl+ Enterauf dem Mac, um eine Liste der Optionen zum Generieren von Setter, Getter, Konstruktor usw. Abzurufen

Geben Sie hier die Bildbeschreibung ein

Naga Mallesh Maddali
quelle
2

Verwenden Sie den Dialog code => generate => getter () und setter (), wählen Sie alle Variablen aus und generieren Sie alle Methoden getter () und setter () gleichzeitig.

Xiaoyifang
quelle
1

Ein anderer lustiger Weg

Geben Sie den Parameternamen nach der Definition an einer beliebigen Stelle im Objekt ein. Sie sehen Setter und Getter. Wählen Sie einfach aus und klicken Sie auf die Eingabetaste :)

Ich habe es mit Android Studio 2.3 versucht

Kadir Erturk
quelle
-1

Klicken Sie mit der rechten Maustaste auf EditorAuswählen Source -> Generate Getters and Settersoder drücken Sie Alt+ Shift+S Geben Sie hier die Bildbeschreibung ein

Hash
quelle
2
Das ist Eclipse. Er fragte nach Android Studio.
WannaGetHigh
-2

Nur für den Fall, dass jemand mit Eclipse arbeitet

Windows 8.1 OS | Eclipse Idle Luna

Deklarieren Sie die Variable private String usernameEclipse der obersten Ebene. Generieren Sie eine Warnung auf der linken Seite Ihres Bildschirms. Klicken Sie auf diese Warnung, und einige Vorschläge werden angezeigt. Wählen Sie dann Generieren aus.Geben Sie hier die Bildbeschreibung ein

Jonathan Caceres Romero
quelle
1
Die Frage wurde an Android Studio gerichtet, nicht an Eclipse
Alberto M