SORU
8 ŞUBAT 2012, ÇARŞAMBA


Android özel bir görünüm için üç kurucular ihtiyacım var mı?

Özel bir görünüm oluştururken, birçok kişi bu şekilde yapmak gibi görünüyor fark ettim:

public MyView(Context context) {
  super(context);
  // this constructor used when programmatically creating view
  doAdditionalConstructorWork();
}

public MyView(Context context, AttributeSet attrs) {
  super(context, attrs);
  // this constructor used when creating view through XML
  doAdditionalConstructorWork();
}

private void doAdditionalConstructorWork() {

  // init variables etc.
}

İlk sorum, ne kurucu MyView(Context context, AttributeSet attrs, int defStyle) hakkında? Kullanılan nerede emin değilim, ama süper sınıfında görüyorum. Ona ihtiyacım var, ve nerede kullanılır?

another part to this question var.

CEVAP
8 ŞUBAT 2012, ÇARŞAMBA


Eğer özel ekleyeceksiniz xml View gibi :

 <com.mypack.MyView
      ...
      />

kurucu public MyView(Context context, AttributeSet attrs) Android View şişirmek için çalıştığında Exception bir alacak aksi takdirde gerekir.

Eğer eklerseniz 11 ** xml ve de android:style öznitelik gibi spcify :

 <com.mypack.MyView
      style="@styles/MyCustomStyle"
      ...
      />

ayrıca üçüncü kurucu public MyView(Context context, AttributeSet attrs,int defStyle) gerekir .

Üçüncü kurucu genellikle style genişletmek ve özelleştirmek için kullanılır ve daha sonra düzenleri View verilen style bunu ayarlamak istiyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ionized Digital Air Studios

    Ionized Digi

    20 HAZİRAN 2009
  • Djbasilio AuToBaSs

    Djbasilio Au

    20 Aralık 2008
  • Sergio Fernandez

    Sergio Ferna

    1 EKİM 2009