SORU
25 EYLÜL 2009, Cuma


Android - a özel (bileşik) Yazma bileşeni

Şu anda geliştiriyorum Android uygulaması oldukça büyük büyüdü bir ana etkinlik vardır. Bu esas olarak 3 sekmeleri ile TabWidget içerdiği için. Her sekme bir kaç bileşeni var oldukça. Etkinlik tüm bu bileşenlerin kontrolünü bir an vardır. Bu Etkinlik 20 alanlar (hemen hemen her bileşeni için bir alan) olduğunu tahmin edebilirsin sanırım. Ayrıca mantık bir sürü (tıklayın dinleyiciler, listeleri doldurmak için mantık, vb) içerir.

Ben normalde bileşen tabanlı çerçeveler ne her şey özel ve parçalara ayrıldı. Her özel bileşen sonra net bir sorumluluk olurdu. Bileşenleri ve diğer tüm mantığı bu bileşen ile ilgili kendi kümesini içerir.

Bir diyorlar ne bu yapılabilir, ve Android belgelerinde bir şey buldum nasıl olduğunu anlamaya çalıştım "Bileşik Kontrol". (Bkz: 13* *ve "Bileşik Kontroller" bölümü) bir bileşen gibi bir XML dosyasını görüntülemek yapısını tanımlayan temel oluşturmak istiyorum. gidin

Belgelerinde ne yazıyor?

Gibi bir Aktivite ile,unutmayın ya bildirimsel kullanabilirsiniz (XML-tabanlı) oluşturmak için yaklaşım içerdiği bileşenler, ya sen nest programlı olarak kodunuzu onları.

İşte bu iyi haber! XML tabanlı bir yaklaşım istiyorum tam olarak ne olduğunu! Ama, bunun dışında nasıl yapılacağı yazmıyor "gibi bir Aktivite ile"... Ama bir aktivitede ne diyorsun setContentView(...) XML manzarası şişirmek için. Bu yöntem eğer örneğin LinearLayout alt sınıf, kullanılamaz.

Manuel olarak şu şekilde: XML şişirmek için çalıştım

public class MyCompoundComponent extends LinearLayout {

    public MyCompoundComponent(Context context, AttributeSet attributeSet) {
        super(context, attributeSet);
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        inflater.inflate(R.layout.my_layout, this);
    }
}

Bu, yükleme yapıyorum XML LinearLayout kök öğesi olarak ilan etti gerçeği dışında çalışır. Bu LinearLayout şişirilmiş kendisi zaten bir LinearLayout! MyCompoundComponent Bir çocuk olur! Şimdi MyCompoundComponent arasında gereksiz bir LinearLayout ve gerçekten ihtiyacı olan bir bakış açımız var.

Birileri bu yaklaşım için daha iyi bir yol bana, bir yedek olması kaçınarak veriniz LinearLayout örneği olabilir mi?

CEVAP
25 EYLÜL 2009, Cuma


KullanınbirleştirmeXML kök olarak etiketleyin

<merge xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Your Layout -->
</merge>

Check this article.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Cristina Landa

    Cristina Lan

    28 Ocak 2010
  • MuscleProdigyTV

    MuscleProdig

    8 Ocak 2011
  • newport83

    newport83

    19 HAZİRAN 2006