タブレットの Gmail アプリのスタイルで、編集モードを実行したいと思います。ユーザーがアクションバーの編集ボタンを押すと、左側に完了ボタン、右側に削除ボタンがあるアクションビューを表示したいと思います。
ここに actionbarsherlock なしで動作する例があります: https://code.google.com/p/romannurik-code/source/browse/misc/donediscard
互換性の理由から、actionbarsherlock に固執したいと思います。
これは、onCreateOptionsMenu で解決した方法です。
getSupportActionBar().setBackgroundDrawable(getResources().getDrawable(R.drawable.white));
getSupportActionBar().setIcon(R.drawable.white);
for (int i = 0; i < menu.size(); i++) {
menu.getItem(i).setVisible(false); }
getSupportActionBar().setDisplayHomeAsUpEnabled(false);
何もしないので、ホーム アイコンを白い 1x1 ピクセルのドローアブルに設定する必要がありました。
アクションビューの背景色として、アクションバーの背景色も設定する必要がありました。そうでなければ、1x1 のホーム アイコンの周りにパディングがあり、元の背景色が白いホーム ボタンの周りに表示されます。
これに対するより良い解決策はありますか?
編集:スタイルも変更する必要がありました:
<style name="Theme.Styled" parent="Theme.Sherlock.Light">
<item name="android:homeAsUpIndicator">@drawable/white</item>
<item name="homeAsUpIndicator">@drawable/white</item>
</style>
また、android:homeAsUpIndicator の設定により、最小 API レベルが 8 から 11 に増加しましたが、これも問題です。