Android Studio'da otomatik olarak alıcıları ve ayarlayıcıları oluşturma


294

Android Studio'da belirli bir sınıftaki alıcıları ve ayarlayıcıları otomatik olarak oluşturmak için bir kısayol var mı?

Yanıtlar:


522

Kullanımı Alt+ InsertWindows için veya Command+ Neditörü Mac için, kolayca sınıfın herhangi alanları için alıcı ve ayarlayıcı yöntemleri oluşturabilir. Bu, Menü Çubuğu'nu kullanmakla aynı etkiye sahiptir -> Code->Generate...

resim açıklamasını buraya girin

ve sonra üst karakter veya kontrol düğmesini kullanarak alıcı ve ayarlayıcı eklemek için ihtiyacınız olan tüm değişkenleri seçin


77
Mac'lerde olanlar kontrol + enter.
anita

ivar _username ve getter ve setter gibi getter ve setter oluşturma imkanı getUsername ve setUsername?
Nicolas Manzini

Mac Control + n
Alon Kogan

2
Java için iyi çalışıyor.Ama uygulama geliştirme için android stüdyoda kotlin kullanarak im.O zaman java gibi alıcı / ayarlayıcı nasıl oluşturulur?
SIVAKUMAR.J

2
Kotlin sınıfı için alıcılar ve ayarlayıcılar nasıl üretilir
Ashik Azeez


29

Android Studio ve OSx :

cmd+ n>> GenerateTuşlarına basınGetter and Setter

Android Studio ve Windows :

Alt+ Insert>> GenerateTuşlarına basınGetter and Setter


Sadece Windows üzerinde test edilen Alt + Shift + S + R çalışmıyor ve sağ tıklama Kaynak içermiyor. Belki özel bir kurulum mu?
Anthea

Kazanma bölümünü düzelttim! :)
Jorgesys

8

Aşağıdaki adımları uygulayarak alıcı ve ayarlayıcı oluşturabilirsiniz:

  • Önce değişkenleri bildirin.
  • ALT+ işaretini tıklayınInsertklavyedeki imleci değişken bildirim kısmına getirin
  • şimdi yapıcıyı seçin ve klavyede Ctrl+ tuşlarına basın AveEnter yapıcı oluşturmak için .
  • Şimdi tekrar imleci yapıcı kapanış ayracı bir sonraki satırına yerleştirmek, ALT+ tıklayın INSERTve alıcı ve ayarlayıcı seçin ve tüm değişkenleri seçmek ve vurmak için tekrar CTRL+ tuşuna basın . AEnter

Bu kadar. Mutlu kodlama !!


8
  • değişkeni yarat
  • sağ tık
  • "Oluştur" u ve ardından "Alıcı ve Ayarlayıcı" seçeneğini belirleyin

Sağ tıklama menüsü


Kotlin Constructors için herhangi bir kısayol var mı? Alt + Ins bana Oluşturucular oluştur seçeneği göstermiyor.
Arbaz

Denedin Alt + Entermi
Angelo Polotto

bu durumda ne olduğunu bilmiyorum. Sorununuzu Intellij forumuna gönderdiniz mi?
Angelo Polotto

Çözümü bulduğunuzda, lütfen burada paylaşın.
Angelo Polotto

8

Android Studio ve Windows:

fn+ alt+insert

Menü görüntüsü


1
Resminiz yayında doğru bir şekilde görüntülenmedi ve bir resim açıklaması tamamlamadınız - 'resim açıklamasını buraya girin' yazıyor.
LordWilmore

6

İmleci değişkenlerin altına getirin -> sağ tıklayın -> Oluştur -> Alıcı ve Ayarlayıcı -> Getirilecek ve ayarlanacak değişkenleri seçin

veya

Alt + Ekle -> Alıcı ve Ayarlayıcı -> Değişkenleri seçin


Soru, alıcıları ve ayarlayıcıları tek bir kısayolla oluşturmanın mümkün olup olmadığıydı, bu nedenle bu seçeneği bir menüde bulabileceğiniz yer değil.
R Pelzer

Anlamadım. Alt + Ekle -> Alıcı ve Ayarlayıcı -> Değişkenleri seçin
Baby

5

Belirtildiği gibi burada , ayrıca dikkate önek ve sonek almaya alıcı / ayarlayıcı nesil (örnek değişkenleri için örneğin m) özelleştirebilirsiniz. Sekme altına öneklerinizi / soneklerinizi gidin File->Settingsve genişletin Code Style, seçin Javave ekleyin Code Generation.


4

Yöntem eki olarak m olmadan getter ve setter oluşturmak için AndroidAccessorsPlugin of eklentisini kullanabilirsiniz .Android Studio

Örn: orta; Üretecek getId()ve setId()yerine getmId()vesetmId()

plugin ekran görüntüsü


4

Bu cevap sorunuzla ilgilidir ancak tam olarak bir cevap değildir . =) Son zamanlarda öğrendiğim ilginç bir kütüphane ve sizinle paylaşmak istiyorum.


Proje Lombok böyle getters, belirleyiciler olarak ortak yöntemler oluşturmak, olabilir equals()ve hashCode(), toString()senin sınıfları için otomatik. Bunları, kaynatma plakası kodunu azaltan ek açıklamalar ile değiştirir. Lombok kullanılarak yazılmış kodun iyi bir örneğini görmek için ana sayfada bir video izleyin veya bu makaleyi okuyun .

Lombok ile Android geliştirme kolaydır ve Lombok derleme zamanı sadece bir kütüphane olduğu için android uygulamanızı daha 'ağır' yapmaz. Android projenizi düzgün bir şekilde yapılandırmanız önemlidir .

Başka bir örnek:

import lombok.Getter;
import lombok.Setter;

public class Profile {

  @Getter @Setter
  private String username;

  @Getter @Setter
  private String password;

}

Lombok ile Android geliştirme mümkündür. Lombok sadece derleme zamanı bağımlılığı olmalıdır, aksi takdirde Lombok'un tamamı DEX dosyalarınızda sonuçlanacak ve değerli alanınızı boşa harcayacaktır. Kepçe pasajı:

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

Ayrıca geliştirme zamanında IDE'nizde Lombok özelliklerini desteklemek için Lombok IntelliJ eklentisini eklemek isteyebilirsiniz . Ayrıca Lombok'a dayanan Hrisey kütüphanesi var. Basitçe söylemek gerekirse, Lombok + Parsellable desteği.


1
Maalesef Project Lombok, Android kütüphane projelerinde mola veriyor. Şu anda güvenilmez.
IgorGanapolsky

1
@IgorGanapolsky herhangi bir kanıt var mı?
Artem Novikov

1
@IgorGanapolsky Project Lombok Android ile sorunsuz çalışıyor. Kurulum kılavuzuna bakın .
naXa

3

Ayarlayıcı, alıcı, oluşturucu vb. Oluşturma seçeneklerinin listesini almak için Mac'te Ctrl+ kullanınEnter

resim açıklamasını buraya girin


2

code => create => getter () ve setter () iletişim kutularını kullanın, tüm değişkenleri seçin, bir defada tüm getter (), setter () yöntemlerini oluşturun.


1

Başka bir komik yol

Tanımdan sonra nesnenin herhangi bir yerine parametre adını yazın, ayarlayıcı ve alıcıyı göreceksiniz, Sadece seçin ve enter tuşuna basın :)

Android Studio 2.3 ile denedim


-1

Sağ tıklayın ve EditorSeç Source -> Generate Getters and Settersveya Alt+ Shift+ tuşlarına basınS resim açıklamasını buraya girin


2
Bu Eclipse. Android Studio'yu istedi.
WannaGetHigh

-2

Birisi Eclipse ile çalışıyorsa

Windows 8.1 İşletim Sistemi | Eclipse Idle Luna

En üst seviye değişkenini bildir private String usernameEclipse lütfen ekranınızın sol tarafında bir uyarı oluşturup uyarı ve birkaç öneri göründüğünü tıklayıp oluştur'u seçin.resim açıklamasını buraya girin


1
Soru, tutulmaya değil Android Studio'ya yöneltildi
Alberto M
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.