2012-11-03 19 views
3

我想让菜单inflater在我的SherlockActivity类中膨胀菜单xml。在SherlockActivity中的MenuInflater

我的onCreateOptionsMenu方法是这样的 -

@Override 
public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) { 
    MenuInflater inflater = this.getSupportMenuInflater(); 
    inflater.inflate(R.menu.messagespagemenu, menu); 
    return true; 
} 

和我messagespagemenu.xml看起来像这样 -

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 
<item 
    android:id="@+id/text" 
    android:title="@string/deleteall"> 
</item> 

而且我的活动类扩展SherlockActivity。

任何人都可以请我指出我正在做的错误。

编辑:

该菜单未显示。当我尝试在另一个类中使用相同的代码扩展SherlockListActivity时,它就可以工作。所以我想知道我是否缺少这个类别中的任何东西

+3

和,有什么问题? –

+0

@ Ovidiu请参阅已编辑的问题 – nasaa

+0

@nasaa:您可以发布问题图片吗?这应该给你所面临的问题提供一些清晰的信息。如果它可以是_shown_那就是。 –

回答

1

也许你是在预蜂巢设备上运行此操作,并且只有单击硬件menu密钥才会显示此MenuItem。您应在您的<item>上设置android:showAsAction:alwaysandroid:showAsAction:ifRoom

编辑:你也应该拨打电话到super.onCreateOptionsMenu()

+0

是啊,我预先蜂窝设备上运行,这就是为什么我用福尔摩斯。我想看看它的硬件菜单本身上,但随后也它不节目。 – nasaa

+0

尝试,并没有什么区别。 – nasaa

0

试试这个,看看,如果这个工程:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 

    MenuInflater inflate = getSupportMenuInflater(); 
    inflate.inflate(R.menu.messagespagemenu, menu); 

    return super.onCreateOptionsMenu(menu); 
} 

此外,确保这部分看起来很像这个样本以上:

public boolean onCreateOptionsMenu(Menu menu) 

您现在的位置:

public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) 

我不确定这是否有所作为,但看到它的作品。相应的import应该是import com.actionbarsherlock.view.Menu;

+0

对不起希德。试过你说的到底是什么,仍然没有运气。 – nasaa

+0

嗯......你想让菜单看起来像是在ICS中做的,或者你希望它看起来像在蜂窝之前做的那样? –

+0

像之前一样。 – nasaa

相关问题