アクションバーにスピナーがあります。これはメニュー項目です(ナビゲーションモードではありません)。spinnerNumberからメソッドを呼び出す行でnullpointerexceptionが返されます。xmlで何か問題が発生していると思います。または、OnCreateOptionMenuで初期化するべきではないかもしれません(ただし、メニューxmlがまだ膨らんでいないときにOnCreateで呼び出すのも正しくないと思います)。
act_main.xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/numberSpinner"
android:actionLayout="@layout/spin_number"
android:showAsAction="always">
</item>
<item
android:id="@+id/menu_settings"
android:orderInCategory="100"
android:showAsAction="ifRoom"
android:title="@string/menu_settings">
</item>
spin_number.xml
<Spinner xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
SherlockFragmentActivity内のメソッド:
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.act_main, menu);
spinnerNumber= (Spinner)findViewById(R.id.numberSpinner);
mAdapter = new SimpleCursorAdapter(this,
android.R.layout.simple_list_item_2, null,
new String[] { MyContentProvider.Data.N_TITLE, MyContentProvider.Data.N_NUMBER, MyContentProvider.Data.N_ID },
new int[] { android.R.id.text1, android.R.id.text2 },
CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER);
this.getSupportLoaderManager().initLoader(NUMBERS_LOADER, null, this);
spinnerNumber.setAdapter(mAdapter);
spinnerNumber.setOnItemSelectedListener(this);
spinnerNumber.setSelection(setSpinPosition());
return true;
}