菜单项到新活动

时间:2013-04-18 13:00:12

标签: java android menu android-activity

我正在尝试使用菜单按钮将用户发送到新活动,然后再返回。把它放到上下文中,我有一个基本的计算器,当应用程序打开时运行(现在工作正常),然后我希望用户点击他/她手机上的菜单按钮,(两个按钮应该弹出Home和Tip计算器)当用户点击小费计算器时,它应该加载新的活动TipCalculator。然后,如果再次按下菜单按钮,则应显示相同的两个选项,主页按钮应将它们带回基本计算器。

这是我的Calculator.java代码

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_calculator, menu);

        menu.add(Menu.NONE,HOME_MENU_ID,Menu.NONE,"Home");
        menu.add(Menu.NONE,SECOND_MENU_ID,Menu.NONE,"Tip Calculator");
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // TODO Auto-generated method stub

        switch(item.getItemId()){

        case HOME_MENU_ID:
            Intent main = new Intent(this,Calculator.class);
            startActivity(main);
            finish();
        return true;

        case SECOND_MENU_ID:
            Intent second = new Intent(this,TipCalculator.class);
            startActivity(second);
            finish();
        return true;

        }

        return super.onOptionsItemSelected(item);
    }

这是TipCalculator.java的代码

    public class TipCalculator extends Calculator{

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_tipcalculator);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_tipcalculator, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // TODO Auto-generated method stub
    Intent main = new Intent(this,Calculator.class);
    startActivity(main);
    finish();
    return super.onOptionsItemSelected(item);
}

}

菜单显示正常,主页按钮将刷新主页,但小费计算器按钮给我一个强制关闭错误并且崩溃了。

0 个答案:

没有答案