5

这就是我在股票 android 上设置 Action Bar Overflow 的样式:

<style name="DropDownNav.MyTheme" parent="@android:style/Widget.Holo.Light.Spinner">
    <item name="android:popupBackground">@drawable/menu_dropdown_panel</item>
    <item name="android:dropDownSelector">@drawable/selectable_background</item>
</style>

但指定的自定义选择器不适用于带有硬件按钮的三星设备上的弹出选项菜单,而是默认为蓝色。

我已经看到了这个答案并尝试申请

<style name="ListPopupWindow.IvuTheme" parent="android:Widget.ListPopupWindow">
    <item name="android:dropDownSelector">@drawable/list_selector_holo_light</item>
    <item name="android:listSelector">@drawable/list_selector_holo_light</item>
</style>

但没有效果。

为了更改后面的硬件按钮选项菜单中的选择器,我需要继承什么样式(以及我的主题中的相应属性是什么)?

感谢您的任何建议

4

1 回答 1

-1

1)扩展您的应用程序类

public class MyApplication extends Application {

@Override
public void onCreate() {
    super.onCreate();

    try {
        ViewConfiguration config = ViewConfiguration.get(this);
        Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
        if(menuKeyField != null) {
            menuKeyField.setAccessible(true);
            menuKeyField.setBoolean(config, false);
            }
        } catch (Exception ex) {
            // Ignore
        }
    }
}

2)添加到清单:

<application
    ...
    android:name=".MyApplication">
于 2014-12-06T22:07:03.673 回答