最近、ActionBarSherlock 4.1 を使用するようにアプリケーションをアップグレードしました。Honeycomb でアプリを実行しているアップグレード ユーザーは、アクションバーでカスタム ビューを設定するときに、null ポインター例外が原因で強制終了することがありました。
2 つのスピナーを含むカスタム ビューをアクションバーに追加します。これは Android 4.0 および 4.1 では機能しますが、3.2 では機能しません。
bar.setCustomView(R.layout.custom_action_bar);// spinners
actionBarViewHolder= new CustomActionBarViewHolder();
actionBarViewHolder.categorySpinner = (Spinner) findViewById(R.id.actionbar_catergory);
actionBarViewHolder.sortBySpinner = (Spinner) findViewById(R.id.actionbar_sortby);
Android 3.2 ではスピナーはまだ見つかりません 4.0 と 4.1 ではビューが見つかり、すべてがスムーズに実行されます。
3.0 エミュレーターでアプリケーションを試したことはありませんが、問題は解決しないと思います。
何が問題になる可能性がありますか?
<LinearLayout android:id="@+id/linearLayout1"
android:layout_width="wrap_content" android:layout_height="match_parent"
android:gravity="center_vertical|center_horizontal"
android:layout_weight="0.5">
<TextView android:id="@+id/textView1" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="Category:" />
<Spinner android:id="@+id/actionbar_catergory"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:entries="@array/actionbar_spinner_catergory"
android:background="@drawable/spinner_background" />
</LinearLayout>
<LinearLayout android:id="@+id/linearLayout1"
android:layout_width="wrap_content" android:layout_height="match_parent"
android:gravity="center_vertical|center_horizontal"
android:layout_weight="0.5">
<TextView android:id="@+id/textView2" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="Sort By:" />
<Spinner android:id="@+id/actionbar_sortby"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:entries="@array/actionbar_spinner_sortby" android:background="@drawable/spinner_background" />
</LinearLayout>