サンプル ActionBarSherlock/samples/demos/ListNavigation/ を変更しました。変更については、こちらの github フォークを参照してください。
要約すれば
私が追加しました
- MyArrayAdapter
- my_spinner_dropdown_item.xml
ListNavigation.java を変更しました
1. -25 ArrayAdapter<CharSequence> list = new CustomArrayAdapter(context, R.layout.sherlock_spinner_item, mLocations);
2. +25 ArrayAdapter<CharSequence> list = new MyArrayAdapter(context, R.layout.sherlock_spinner_item, mLocations);
問題は次のとおりです。
Android 4.0 を搭載した AVD で実行すると、期待どおりの望ましい結果が得られます。スピナー ドロップダウンを開くたびに、各アイテムの横にある数値が増加します。
Android 2.2 を搭載した AVD で実行すると、期待どおりの結果が得られません。Spinner ドロップダウンは、開いた最初の 2 回のみ更新され、その後は更新されません。
本当に奇妙なのは、 setText() がまだ呼び出されていて、 count がまだインクリメントされているのに、新しい値がまったく描画されていないことです。
この問題を修正する動機は? Google の Gmail アプリにも同様の機能があり、Spinner ドロップダウン メニュー内に動的カウントがあります。これは実際に私が機能のアイデアを得た場所です。