为什么我的drawable不适用于我的菜单?

时间:2015-04-27 01:26:06

标签: android menu android-drawable

我有一个活动,其中包含要启动的自定义菜单项。问题是,当我点击菜单按钮时,弹出窗口具有透明背景。我尝试将其更改为ActionBarActivity而不是Activity,但它没有覆盖onMenuItemSelected。

所以,为了解决这个问题,我将其应用于我的styles.xml:

<style name="AppTheme" parent="Theme.AppCompat.Light">
 <item name="android:panelFullBackground">@drawable/customblackbox</item>
</style>

它没有用,仍然有透明的背景。这是我风格中唯一的主题。这是我创建的自定义黑盒xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#151515"/>
<corners android:radius="0dp" />
<padding android:left="0dp" android:top="0dp"
       android:right="0dp" android:bottom="0dp" />
<stroke android:color="#151515" android:width="1dp" />   
 </shape>

为什么drawable无法正常工作?

编辑:

以下是我在活动中设置菜单的方法。这两个ID只是整数:

 @Override
  public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);

    menu.add(0, EDIT_ID, 0, "Edit Fencer");
    menu.add(0, DELETE_ID,  0, R.string.fencer_delete);
    return true;
}


@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
    switch (item.getItemId()) {
        case EDIT_ID:
         //do other stuff
    .
    .
    .
]

要清楚,这是当我点击菜单选项时发生的事情: enter image description here

2 个答案:

答案 0 :(得分:0)

尝试将自定义菜单的高度和宽度设置为match_parent。

还可以共享与自定义菜单相关的代码。

请尝试以下操作:

<style name="AppTheme" parent="Theme.AppCompat.Light">
 <item name="android:popupBackground">@drawable/customblackbox</item>
</style>

答案 1 :(得分:0)

如果其他人在将来需要答案:

为我解决这个问题的方法是将其更改为actionBarActivity,并在onCreate期间删除操作栏。似乎没有其他工作。