私のプロジェクトには、拡張ArrayAdapter<String>
および実装するクラスがありますSectionIndexer
。getPositionForSection
メソッドを実装すると、getSectionForPosition
いくつかの奇妙な動作が見つかりました。
getSectionForPosition
0 を返すときにセクション インデクサーが正しく動作するのはなぜですか?
public int getSectionForPosition(int position) {
return 0;
}
この実装は、次のような多くのチュートリアルで使用されています。
http://androidopentutorials.com/android-listview-fastscroll/
http://www.survivingwithandroid.com/2012/12/android-listview-sectionindexer-fastscroll.html
ドキュメンテーションはそれを言う
アダプター内の位置を指定すると、セクション オブジェクトの配列内の対応するセクションのインデックスが返されます。
したがって、私のリストに文字「A」で始まる 5 つの項目と文字「B」で始まるいくつかの項目がある場合、getSectionForPosition(5) は 1 を返す必要があります。