2011-01-09 20 views
13

Bu hem de Cursors ve bir Özel SimpleCursorAdapter hem de kullandığınızda bir ListView'de bölümleri üretmek için bu biraz kaybı.Android içinde Bölümler ile SimpleCursorAdapter

Dışarıdaki belgelerin çoğu, getView() etc kullanarak veya birkaç Bağdaştırıcı kullanarak ve bölüm üstbilgileri ekleyerek başvuruyor.

Ama bunların hepsi görünür

herkes önceden benzer bir şeyle ele Has vb BaseAdapters, ListAdapters ve ArrayAdapters dayalı olması?

Aksi halde, bu işin nasıl yapılacağına dair herhangi bir ipucu var mı?

Teşekkür Simon

cevap

9

Ben this öğretici takip ve oldukça iyi çalıştı. Kod, herhangi bir Adapter türünü kullanmanızı sağlar, bu nedenle ArrayAdapter veya CursorAdapter ile çalışır.

+0

Bunun için teşekkürler. Başımı, özel olarak benim mevcut özel bağdaştırıcılarıma sarıcı olarak SeparatedListAdapter kullanmam gerektiği gerçeği etrafında sarmak zorunda kaldım. – Simon

9

CursorAdapter kullanıyorsanız, SectionCursorAdapter numaralı telefonu kullanabilirsiniz.

+0

Şerefe, bu, Listemde alfabetik bölümleri olması için SimpleCursorAdapters ile harika çalıştı. Bu düşündüğümden çok daha fazla iş vardı, bence SimpleCursorAdapter beni sadeleştirdi! – georgiecasey

+0

Başlığın hesaplanması için tüm öğeler üzerinde yineleme yapmak zorunda olduğunuzdan, uzun bir liste listesiyle SimpleCursorAdapter veritabanı için etkili değildir. İmleç bir GROUP BY sorgusu ile döndürülürse, yeni bir bölümün olup olmadığını belirlemek için önceki öğenin başlığını (gruplanmış değeri) önceki ve sonraki öğelerinkiyle karşılaştırmak çok daha iyidir. –

+0

Bölümleri hesaplamak için AlphabetIndexer'ı kullanmak isteyebilirsiniz. – ycagri

2

Etkin geliştirmede bir diğer harika olan ise SectionCursorAdapter no'lu dizge ile destekleniyor. Bunun yaratıcısı, resmi olarak piyasaya sürüldüğünde RecyclerView'ı desteklemek için güncelleneceğini de sözlerine ekledi. Bununla ilgili blog gönderisini de kontrol edebilirsiniz: ToastDroid

İlgili konular