【问题标题】:Options menu persists in the second activity选项菜单保留在第二个活动中
【发布时间】:2014-01-04 21:41:03
【问题描述】:

点击按钮后使用此方法打开一个新的Activity:

setContentView(R.layout.activity_comunidades01);

第二个 Activity 仍然显示与前一个相同的菜单。

我已经阅读了 serval 方法来将其修复为此处相关的方法:

Android: How to enable/disable option menu item on button click?

但我发现初始化和创建菜单的方法从未被调用过。我什至尝试关注这个其他链接但没有成功:

onCreateOptionsMenu is never called

我什至删除了此活动的 menu.xml 中的所有项目,但仍显示以前的活动选项。

我还澄清说,我使用 android 4.4 作为目标 API,但至少需要 10 级,因为将使用的某些设备运行的是 android 2.3。

我的第二个Activity是这样的:

  public class SecondActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_SecondActivity);

    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu){
        System.out.println("EN ON PREPARE OPTIONS MENU");
        (menu.findItem(R.id.sincronizar)).setEnabled(false);
        return super.onPrepareOptionsMenu(menu);
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        System.out.println("EN ON CREATE OPTIONS MENU");
        getMenuInflater().inflate(R.menu.SecondActivity, menu);

        return true;
    }

}

【问题讨论】:

    标签: android


    【解决方案1】:

    要开始第二个活动,请使用:

    Button bt = (Button)findViewById(R.id.bt);
    bt.setOnClickListener(new OnClickListener() {
          @Override
          public void onClick(View view) {
            Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
            startActivity(intent);
            //finish(); //if you want to close FirstActivity after showing SecondActivity
          }
     });
    

    【讨论】:

      【解决方案2】:

      点击按钮后使用此方法打开一个新的Activity:

      setContentView(R.layout.activity_comunidades01)

      这不是您打开其他活动的方式! 这样你只改变当前活动的内容,没有别的。

      使用Activity.startActivity()Activity.startActivityForResult()(如docs 中所述)开始另一个活动。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-06-29
        • 1970-01-01
        • 1970-01-01
        • 2019-08-24
        • 1970-01-01
        • 2015-10-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多