Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 每当我按下droid上的物理后退按钮时,我都想进入上一个菜单,有人能引导我完成吗?_Java_Android - Fatal编程技术网

Java 每当我按下droid上的物理后退按钮时,我都想进入上一个菜单,有人能引导我完成吗?

Java 每当我按下droid上的物理后退按钮时,我都想进入上一个菜单,有人能引导我完成吗?,java,android,Java,Android,这是我的函数,它可以从解析的XML动态创建菜单,现在我希望当我按下物理后退按钮时,它应该移动到上一个菜单。 我已经读了很多关于这方面的文章,但仍然没有找到一篇可以返回菜单的文章 public int create_menu(int level_n){ int lv=level_n; if(flag){ base=0; } else{ base=lv-1; } ctr=true; if(e[lv].get

这是我的函数,它可以从解析的XML动态创建菜单,现在我希望当我按下物理后退按钮时,它应该移动到上一个菜单。 我已经读了很多关于这方面的文章,但仍然没有找到一篇可以返回菜单的文章

public int create_menu(int level_n){

    int lv=level_n;


    if(flag){
        base=0;
    }
    else{
        base=lv-1;
    }
    ctr=true;
    if(e[lv].getType().equals("menu")){
        flag=false;
        subm[lv]=subm[base].addSubMenu(0, lv, 0, e[lv].getName());
        lv++;




        for(int i=0;i<noChild[lv-1];i++){
            if(e[lv+i].getType().equals("menu")){

                create_menu(lv+i);
                Log.i(TAG,"number=  "+i);
                flag=false;

            }
            else if (e[lv+i].getType().equals("action")){
                if(ctr){
                Log.i(TAG,"going to else"+e[lv].getName()+"   " +i);
                subm[lv]=subm[lv-1+i].addSubMenu(0, lv+i, 0, e[lv+i].getName());
                //Log.i(TAG,"element = "+e[lv+1].getType() );


                lv++;
                create_menu(lv);
                ctr=false;
                }

                flag=false;
            }
        }
        flag=true;

    }
    else if(e[lv].getType().equals("action")){
        if(flag==true && ctr==true)
        {
            subm[lv]=subm[base].addSubMenu(0, lv,0, e[lv].getName());
            lv++;

        }
        else if(flag==false && ctr==false){
            subm[lv]=subm[base-1].addSubMenu(0, lv, 0, e[lv].getName());
            lv++;

        }

    }

    return lv;


}
public int创建菜单(int级别){
int lv=电平;
国际单项体育联合会(旗){
基数=0;
}
否则{
基础=lv-1;
}
ctr=真;
if(e[lv].getType().equals(“菜单”)){
flag=false;
subm[lv]=subm[base].addSubMenu(0,lv,0,e[lv].getName());
lv++;

对于(int i=0;i使用
KeyEvent
),请尝试以下操作

public boolean onKeyUp( int keyCode, KeyEvent event )
    {
        if( keyCode == KeyEvent.KEYCODE_BACK )
        {
            finish();
            return true;
        }
        return super.onKeyUp( keyCode, event );
    }

我想在菜单中返回。我有三级菜单,请您向我解释一下,为了我的利益,我应该如何使用此功能。谢谢此代码用于手机上的硬件返回按钮,当按下此按钮时,返回到上一个活动…上面只是一个示例…如果您想在菜单中使用它,请删除finish()并在那里实现你的代码我试过了,但没有帮助,我应该在哪里实现这个??看这个链接…它会有帮助的