Samsung S3和S4的应用程序UI问题(4.2.2+)

时间:2014-02-06 19:48:46

标签: android user-interface menu samsung-mobile

我的应用程序在不同的设备上运行良好,包括谷歌Nexus 4(4.4.2),Nexus S(4.1.2)和三星S3(4.1。*),但我有菜单通胀显示问题S3和S4与4.2.2+(之前未经证实)。

正在发生的事情是,在纵向模式下,菜单出现并在Tab Fragment下方展开(可能在整个视图下方)。在横向中,菜单显示并展开以覆盖整个视图,但高于一切。在肖像中,没有文字或图标出现(或者至少它们在顶部位不可见),但在横向中它们可以。

菜单已经存在,并且正在涵盖以下内容:

public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
    MenuInflater inflater = getActivity().getMenuInflater();
    inflater.inflate(R.menu.actionmode, menu);
    return true; 
}

R.menu.actionmode:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/actionmode_delete"
    android:title="@string/label_actionmode_delete"
    android:icon="@drawable/actionmode_discard"
    android:showAsAction="always|withText"/>
</menu>

我不知道是什么导致这个问题的三星S3,S4与4.2 +。

更新:

原来三星在我的风格中使用这一行代码做了一些奇怪的事情:

<item name="android:actionModeStyle">@style/MyActionMode</item>

一旦我删除了这一行,UI工作正常,但我仍然需要找到一种方法来应用我需要的样式。

1 个答案:

答案 0 :(得分:2)

三星在我的风格中使用这一行代码做了一些奇怪的事情:

<item name="android:actionModeStyle">@style/MyActionMode</item>

幸运的是,我只需要设置背景颜色,所以我能够做到以下几点:

<item name="android:actionModeBackground">@color/custom_main_app_color</item>

我知道这并没有真正解决问题,它基本上回避了问题,但它对我有用。