首页 > 解决方案 > 级别完成对话框按钮功能

问题描述

您好,我们已经创建了一个关卡完成对话框,如下图所示。我们想要一个结果,如果用户单击下一个按钮,游戏将进入下一阶段。我们创建了一个函数,但它说空指针异常。我们将整数数组与 R.ids 的元素一起使用。我们将从 btnIds 获得的按钮与另一个类的 btnIds 进行比较。我们在switch case中的btnEasy1中测试

int[] btnIds = {
            R.id.btnEasy1, R.id.btnEasy2, R.id.btnEasy3, R.id.btnEasy4, R.id.btnEasy5,
            R.id.btnEasy6, R.id.btnEasy7, R.id.btnEasy8, R.id.btnEasy9, R.id.btnEasy10,
            R.id.btnAverage1, R.id.btnAverage2, R.id.btnAverage3, R.id.btnAverage4,
            R.id.btnAverage5, R.id.btnAverage6, R.id.btnAverage7, R.id.btnAverage8,
            R.id.btnAverage9, R.id.btnAverage10, R.id.btnAverage11, R.id.btnAverage12,
            R.id.btnAverage13, R.id.btnAverage14, R.id.btnAverage15, R.id.btnAverage16,
            R.id.btnHard1, R.id.btnHard2, R.id.btnHard3, R.id.btnHard4, R.id.btnHard5, R.id.btnHard6, R.id.btnHard7,
            R.id.btnHard8, R.id.btnHard9, R.id.btnHard10, R.id.btnHard11, R.id.btnHard12, R.id.btnHard13, R.id.btnHard14,
            R.id.btnHard15, R.id.btnHard16, R.id.btnHard17
    };
 Constants constX = new Constants();
                    int[] nextStagesIds = constX.getBtnIds();
                    try {
                        btnNextStage = nextStageWindow.findViewById(nextStagesIds[idOfNextStage]);
                        btnNextStage.setOnClickListener(new ExternalOnClickListener()); //ERROR
                    }
                    catch (Exception ex){
                        Toast.makeText(getApplicationContext(), ex.toString(), Toast.LENGTH_SHORT).show();
                    }

在此处输入图像描述

在此处输入图像描述

标签: javaandroidswitch-statementonclicklistenergame-development

解决方案


推荐阅读