23

デフォルトのアクション モード (3.0 以降) には、緑色のテーマと左側に [完了] ボタンがあります。これらをカスタマイズするにはどうすればよいですか?

ありがとう

4

8 に答える 8

35

これはすべてのActionModeに使用されるスタイルであり、SDKから取得しました。カスタマイズするには、独自のスタイルを作成する必要があります。とても簡単です。これまでにこのようなことをしたことがない場合は、ActionBarのカスタマイズに関するこの投稿を読む必要があります。それはあなたが知る必要があるすべてを説明します。

    <style name="Widget.ActionMode">
    <item name="android:background">?android:attr/actionModeBackground</item>
    <item name="android:backgroundSplit">?android:attr/actionModeSplitBackground</item>
    <item name="android:height">?android:attr/actionBarSize</item>
    <item name="android:titleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Title</item>
    <item name="android:subtitleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Subtitle</item>
    </style>
于 2011-12-27T00:34:34.233 に答える
26

私のアプリケーションのソリューション

<style name="AppTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionModeBackground">@color/bg_action_bar</item>
</style>
于 2014-02-18T11:58:25.840 に答える
12

このコードを使用すると、アクション モードの背景色を変更したり、DONE イメージを変更したりできます。注: 画像にテキストを追加することもできます! res/styles.xml で:

<style name="AppTheme" parent="android:Theme.Holo">
<item name="android:actionModeBackground">@android:color/white</item>
<item name="android:actionModeCloseDrawable">@drawable/plus</item>

于 2015-04-23T15:09:38.363 に答える
1

Lollipop 前後のデバイスの回答を更新しました。Lollipop+ デバイスで動作させるには、次のように android: プレフィックスを削除する必要があります。

スタイル.xml:

<style name="Widget.ActionMode">
    <item name="android:background">?android:attr/actionModeBackground</item>
    <item name="android:backgroundSplit">?android:attr/actionModeSplitBackground</item>
    <item name="android:height">?android:attr/actionBarSize</item>
    <item name="android:titleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Title</item>
    <item name="android:subtitleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Subtitle</item>
</style>

v21/styles.xml:

<style name="Widget.ActionMode">
    <item name="background">?android:attr/actionModeBackground</item>
    <item name="backgroundSplit">?android:attr/actionModeSplitBackground</item>
    <item name="height">?android:attr/actionBarSize</item>
    <item name="titleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Title</item>
    <item name="subtitleTextStyle">@android:style/TextAppearance.Widget.ActionMode.Subtitle</item>
</style>

parent="@style/Widget.AppCompat.ActionMode"また、オーバーライドを気にしない属性を継承するように、スタイルを設定することをお勧めします。

于 2016-10-10T22:54:00.760 に答える