オーバーライドしたとき、to/from パラメータは役に立たないようです。
ASimpleCursorAdapter
は (その名前が示すように) 限られた範囲のビューをCursor
のデータにバインドする単純なアダプターとして設計されており、2 つの配列 (指定された ID を持つビューへの列名) を介してマッピングが行われます。SimpleCursorAdapter
(特にバインディングを行うnewView()
andメソッド)をオーバーライドする場合bindView()
、それらの列は実際には必要ありません。
「from」に列名を渡さない場合でも、列にアクセスできますが、同時に、to/from の両方に null を渡してアダプターを構築することはできません (したがって、NullPointerException を取得しないように 1 つの列を渡すだけです)。
おそらく自分でマッピングを行うことになりますが(オーバーライドするメソッドとその方法はわかりません)、これらの列はアダプターのコードの他の部分で使用されるためnull
、これらの配列のいずれかを渡すことは避ける必要があります。とにかく、本当の問題は、SimpleCursorAdapter
基本的なシナリオの単純なクラス設計であることです。それをオーバーライドする必要がある場合は、そのスーパークラスCursorAdapter
(これらの配列なしで提供されます) を拡張して、必要なことを行うことをお勧めします。
bindView で何らかの形で to と from を使用する必要がありますか? もしそうなら、どのように?
これらの配列は からの列Cursor
と、データをバインドするビューの ID を表すため、それらを使用することは理にかなっています。