MenuInflater功能在其他设备上不起作用?

时间:2013-07-16 02:43:10

标签: android android-layout

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // TODO Auto-generated method stub
    MenuInflater blowUp = getMenuInflater();
    blowUp.inflate(R.menu.help_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // TODO Auto-generated method stub
    switch (item.getItemId()) {
    case R.id.help:
        Intent z = new Intent(EpicShit.this, Help.class);
        startActivity(z);
        break;
    case R.id.exit:
        finish();
        break;
    }
    return true;
}

这是我为menuinflater运行的代码。我目前正在使用HTC One S,这是有效的,因为我得到它应该的,这是“帮助”和& “出口”。但是当我在三星S2上尝试这个时,我甚至没有选择这两个选项的地方。它不在那里。这可能是因为我们有不同的版本(我的程序不支持旧版本)?或者我编程错误?另外,我现在没有这个代码,但是它也有类似的问题:soundpool和setAlpha在S2上不起作用,但适用于HTC One S.

1 个答案:

答案 0 :(得分:0)

取决于您在menu / main.xml中添加的内容

android:showAsAction="ifRoom"

将出现在Android 4.0+的操作栏中,而

android:showAsAction="Never"

仅在按下菜单键时显示。

Galaxy S2不会显示操作栏(因为它是姜饼手机),而One S则显示。