8

タブレットの 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 に増加しましたが、これも問題です。

4

4 に答える 4

5

あなたはほとんどそこにいました。アイコン/ロゴを完全に非表示にするには、 を使用しますsetDisplayShowHomeEnabled(false)。使用している呼び出しは、アイコンが「上」ボタンとしても機能することを示す小さな矢印を削除するだけです。

于 2013-02-24T19:01:22.350 に答える
-1

古い投稿ですが、私にとって有効な回答を共有したいと思います。

アクションバーで UP ボタンを非表示にするには、OnCreateOptionsMenu で次を使用します。

if (getSupportActionBar() != 
           getSupportActionBar().hide();
       }

アクションバーの UP ボタンを削除するには、OnCreateOptionsMenu で次を使用します。

if (getSupportActionBar() != 
           getSupportActionBar().setDisplayHomeAsUpEnabled(false);
       }

初心者に役立つことを願っています。

于 2015-10-09T20:57:19.610 に答える