SORU
26 Temmuz 2010, PAZARTESİ


Kaçak bir görünüm ile bir görünüm yerine Android düzeni zaman

İki textviews/B ve görünümü C. ile xml-dosyası düzen bir ana var Diğer iki xml düzeni dosyaları seçenek1 ve Seçenek 2 var daha. C Java ya seçenek1 veya seçenek 2 çalışma süresi yüklemek mümkün mü? Eğer öyleyse, ne işlevi kullanmak zorunda mıyım?

CEVAP
21 EYLÜL 2010, Salı


Herhangi bir zamanda herhangi bir görüş yerine.

    int optionId = someExpression ? R.layout.option1 : R.layout.option2;

    View C = findViewById(R.id.C);
    ViewGroup parent = (ViewGroup) C.getParent();
    int index = parent.indexOfChild(C);
    parent.removeView(C);
    C = getLayoutInflater().inflate(optionId, parent, false);
    parent.addView(C, index);

Eğer zaten varolan bir Görünümü değiştirmek, ama başlatma zaman seçenek1/seçenek 2 arasında seçim yapmak istiyorsanız eğer, bu daha kolay yapabilirsin o zaman: android:üst düzen için ıd ve sonra ayarlayın:

    ViewGroup parent = (ViewGroup) findViewById(R.id.parent);
    View C = getLayoutInflater().inflate(optionId, parent, false);
    parent.addView(C, index);

"" Uygun değer manzarası yapısı. göre dizin ayarlamak gerekir Ayrıca bir ViewStub kullanabilirsiniz: ViewStub ve sonra olarak C görünümünüzü ekleyin:

    ViewStub C = (ViewStub) findViewById(R.id.C);
    C.setLayoutResource(optionId);
    C.inflate();

Endişelenmenize gerek yok bu şekilde yukarıda "dizin" eğer XML düzeni yeniden yapılandırmak için isterseniz değer.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BachelorsPadTv

    BachelorsPad

    17 Ocak 2012
  • gamingbits

    gamingbits

    2 Mayıs 2006
  • Krumme1996

    Krumme1996

    21 EYLÜL 2009