2010-11-07 4 views
9

Bir kullanıcı bana getView kullanan bir Özel Bağdaştırıcı ile nasıl kullanılacağını gösterir? Standart bir adaptörle çalışıyorum, ancak bunu özel bir adaptörle nasıl uygulayacağına dair hiçbir fikrim yok.Özel Bağdaştırıcı ile AlphabetIndexer

Teşekkür

+0

Ben burada bir şey yapıyorum http://stackoverflow.com/questions/10224233/alphabetindexer-with-custom-adapter-managed-by-loadermanager – toobsco42

+0

Burada Iphone Alphabatical benzer Android, örnek bir uygulama oluşturuldu Indexer http://mukeshyadav4u.blogspot.in/2012/06/alphabatical-indexer-in-android.html –

cevap

7

Merhaba bu benim AlphaIndexer

private final class ContactListItemAdapter extends ResourceCursorAdapter 
     implements SectionIndexer { 
    AlphabetIndexer alphaIndexer; 

    public ContactListItemAdapter(Context context, int layout, Cursor c) { 
     super(context, layout, c); 
     alphaIndexer = new AlphabetIndexer(c, NAME_COLUMN_INDEX, 
       " ABCDEFGHIJKLMNOPQRSTUVWXYZ"); 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
      .... 
      a normal getView 
      .... 
    } 

    public int getPositionForSection(int section) { 
     return alphaIndexer.getPositionForSection(section); 
    } 

    public int getSectionForPosition(int position) { 
     return alphaIndexer.getSectionForPosition(position); 
    } 

    public Object[] getSections() { 
     return alphaIndexer.getSections(); 
    } 
} 

NAME_COLUMN_INDEX veritabanı şeması sütunun endeksidir nasıl kullanılacağı.

... Bu neye ihtiyacınız değilse

, sınıf vb genişletmek ve olmalıdır hangi bazı kodlar ekleyin. Neyse ki bu yardımcı olur umarım. Başka

public Cursor swapCursor(Cursor c) { 
    // Create our indexer 
    if (c != null) { 
     mIndexer = new AlphabetIndexer(c, c.getColumnIndex(Books.TITLE), 
       " ABCDEFGHIJKLMNOPQRSTUVWXYZ"); 
    } 
    return super.swapCursor(c); 
} 

Herşey @vsm açıklar gibi kalır: Eğer adaptörünün imleci yönetmek için bir LoaderManager kullanıyorsanız

+2

merhaba, sormak istiyorum: Eğer veri – MoHaKa

8

, küçük bir ayarlama yapmak ve adaptörleri swapCursor yöntemi geçersiz isteyeceksiniz.

+0

veritabanından almazsam ne yapabilirim lütfen onu uygulamak için bir demo ??? –

+0

Neyi uygulamak için bir demo? – twaddington

+0

Actualy AlphabetIndexer ve Fast Scroll'u Android'deki İletişim Listesi gibi Alfabetik Arama'ya göre uygulamak istiyorum. Peki nasıl yapmalı? –