7

ユーザーが ShareActionProvider をクリックすると、次のメニューが表示されます。 ここに画像の説明を入力

背景色を変更するにはどうすればよいですか。スタイルを設定する必要があると思いますが、方法がどこにも見つかりません。

4

2 に答える 2

3

スタイルの適用方法に関するドキュメントがない場合は、ソース コードを確認することをお勧めします。実際に ShareActionProvider のスタイルを設定しようとしたことはありませんが、コードからかなりの手がかりを得ました。

  1. そもそも ShareActionProvider.javaが責任を負っている可能性があります
  2. ActivityChooserView.javaは、使用されているビュー クラスのように見えます...
  3. abc_activity_chooser_view.xmlが使用されている可能性が最も高いビューであり?attr/activityChooserViewStyle、スタイル リファレンスとして適用されています。
  4. themes.xmlを調べると、75 行目で次のようになります。

    <item name="activityChooserViewStyle">@style/Widget.AppCompat.ActivityChooserView</item>
    

すぐに同じ状況になるかもしれないので、これがうまくいくかどうか聞いてみたいです;)

于 2013-11-15T14:51:03.217 に答える
0

それで、スタイルを整えるために私がしたことは、styles.xml を編集することでした。

<!-- ACTION BAR -->
<style name="ToolbarTheme">
    <item name="android:textColorPrimary">#fff</item>
    <item name="colorControlNormal">#fff</item>
    <item name="colorControlHighlight">#3fff</item>
    <item name="android:listPopupWindowStyle">@style/ToolbarPopupListStyle</item>
    <item name="listPopupWindowStyle">@style/ToolbarPopupListStyle</item>
    <item name="android:textAppearanceLargePopupMenu">@style/PopupMenuTextAppearance</item>
    <item name="textAppearanceLargePopupMenu">@style/PopupMenuTextAppearance</item>
</style>
<style name="ToolbarStyle">
    <item name="android:background">?colorPrimary</item>
    <item name="android:titleTextAppearance">@style/collapsedToolbarText</item>
    <item name="titleTextAppearance">@style/collapsedToolbarText</item>
</style>

<style name="ToolbarPopupListStyle">
    <item name="android:popupBackground">#00ff00</item>
</style>
<style name="PopupMenuTextAppearance" parent="android:TextAppearance.Small">
    <item name="android:textColor">#ff0000</item>
</style>

もちろん、これらのスタイルは、Toolbar が参照されているレイアウト ファイルで参照する必要があります。

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar_toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="@android:color/transparent"
    app:layout_collapseMode="pin"
    app:theme="@style/ToolbarTheme"
    style="@style/ToolbarStyle"/>

ただし、スタイルには親スタイルが必要であるという奇妙な感じがあります。しかし、それはこのようにうまくいきます。

私を正しい方向に向けてくれた@Brianに感謝します。

于 2015-12-14T10:35:50.190 に答える