tanıtım:
Temel "Parça Öğreticisi" modeli şu şekildedir:
- Tablette, solda, sağda ayrıntılar içeren bir liste bulundurun.
- Her
Fragmentsikisi de aynıdırActivity. - Telefonda bir listede bir liste
FragmentbulunActivity. ActivityAyrıntılar ile yeni bir tane başlatınFragment.
(ör . Dianne Hackborn tarafından Android 3.0 Fragments API ve Fragments API Guide )
Her iki cihazda da işlevsellik Fragments. (basit)
On Tablet , tüm uygulama 1Activity tarihinde, telefonda vardır birçokActivities .
Sorular:
- Telefon uygulamasını birçok kişiye bölmenin bir nedeni var mı
Activities?
Bu yöntemle ilgili bir sorun , ana Tablette ve ayrı Telefonda mantığın çoğunu çoğaltmanızdır .ActivityActivities
- Her iki durumda da 1 Etkinlik modelini tutmak ve aynı anahtarlama mantığını
Fragmentskullanarak (sadece farklı bir düzen kullanarak) daha kolay olmaz mıydı?
Bu şekilde mantığın çoğu Fragmentskendi içlerinde bulunur ve Activitykodun tek bir daha az çoğaltılması vardır.
Ayrıca hakkında okudum ne yerine ActionBarSherlockile en iyi çalışmak gibi görünüyor (ama ben henüz onunla çalışmadım).FragmentsActivities
Eğiticiler aşırı basitleştirilmiş mi, yoksa bu yaklaşımda önemli bir şeyi kaçırdım mı?
Her iki yaklaşımı da ofiste başarıyla denedik - ama daha büyük bir projeye başlamak üzereyim ve işleri kendim için olabildiğince kolaylaştırmak istiyorum.
İlgili sorulara bazı bağlantılar:
- İkilem: Fragmanlar ve Etkinlikler ne zaman kullanılır:
- Etkinlik Geçişine karşılık Dinamik Parçalar ne zaman kullanılacağına ilişkin desenler
- Android - Parçaların etkinliklere ve görünümlere karşı bazı açıklamalarına ihtiyacım var
- Android'deki etkinlikler veya fragmanlar?
- Çoklu fragman ve aktivite etkileşimi tasarımı
- Peki, Android 3.0'daki Fragments'ın kesin avantajları nelerdir?
Güncellemeler
Söz konusu ödül kazanmaya başladı - hala tablet etkinliğimde ve her telefon etkinliğinde uygulama mantığımı neden çoğaltmam gerektiğine ikna olmadım.
Ayrıca Square'de çocuklar tarafından okunmaya değer ilginç bir makale bulundu:
onItemSelected()Faaliyette yöntem sahibi olmama katılmıyorum . Benim "gerçek" app, birçok liste ve alt listeler var. Bu kalıp, Sekme Etkinliğimin onItemSelected()listelerin her birini işlemek için bir yöntemi olması gerektiğini önerir . Ayrıca, Telefon Etkinlikleri'nin her birinde aynı mantığın her biri içinde kopyalanmış olmalıdır. IMHO her bir parçaya öğe seçilen mantık koymak çok daha iyidir - çoğaltma yoktur ve ben kodu yapılandırmak için bu şekilde tercih ederim. Umarım bu yardımcı olur