SORU
27 Temmuz 2011, ÇARŞAMBA


Parçaları içinde parçaları

Bu aslında Android API bir hata olup olmadığını merak ediyorum:

Böyle bir kurulum var:

┌----┬---------┐
|    |         |
|  1 |    2    |
|    |┌-------┐|
|    ||       ||
|    ||   3   ||
└----┴┴-------┴┘
  1. Bir menü yükler parçası sağ bölmede #2 (Arama ekranı).
  2. Parça içeren bir arama ekranı sonuç listesi #3.
  3. Sonuç listesi çeşitli yerlerde (kendi doğru işleyen yüksek düzeyli bir parçası olarak dahil) kullanılır.

Bu işlevi, mükemmel bir telefon 1 & 2 ve 3 ActivityFragments () iyi çalışır.

Bu kodu kullandım ancak:

    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();       
    Fragment frag = new FragmentNumber2();
    if(toLoad != null) frag.setArguments(toLoad);
    transaction.replace(R.id.rightPane, frag);      
    transaction.commit();

R.id.leftPane R.id.rightPane <fragment>yatay doğrusal bir düzen içinde.

Yukarıdaki kodu yerleşik ve sonra yeni bir parça ile değiştirir hangi parçasını kaldırır anladığım kadarıyla. Parlak... Belli ki bu kod, aşağıdaki özel durum alırsınız ikinci kez çalıştırıldığında, çünkü ne olacak değil mi:

07-27 15:22:55.940: ERROR/AndroidRuntime(8105): Caused by: java.lang.IllegalArgumentException: Binary XML file line #57: Duplicate id 0x7f080024, tag null, or parent id 0x0 with another fragment for FragmentNumber3

Bu FragmentNumber3 için kapsayıcı bir kopyası yapıldı ve artık benzersiz bir KİMLİĞİ vardır kaynaklanıyor. İlk Parça yok (?) yeni eklenen olmadı demektir. (aklımda önce ^em>yerini aldı).

Eğer birisi bu mümkün (this answer değil mi öneriyor) olduğunu söyleyebilir ya da bir hata mı?

CEVAP
27 Temmuz 2011, ÇARŞAMBA


İç içe geçmiş parçaları şu anda desteklenmiyor. Başka bir parçası UI içinde bir parça bırakmak tanımsız ve büyük olasılıkla bozuk davranışlara neden olur.

Güncelleme: Parçaları iç içedesteklenirAndroid 4.2 (Android Destek rev 11 Kitaplığı) olarak : http://developer.android.com/about/versions/android-4.2.html#NestedFragments

NOT(this docs) başı olarak: "Not: bu düzeni içeriyorsa bir parçası haline düzeni şişirmek <fragment>. İç içe geçmiş parçaları parçası bir dinamik olarak eklendiğinde desteklenir."

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Moto Journal

    Moto Journal

    28 Mayıs 2007
  • Sparta Spartanutul

    Sparta Spart

    18 HAZİRAN 2013
  • SunsetTrance

    SunsetTrance

    20 EYLÜL 2008