java.lang.NullPointerException :on spinner

标签 java android

我收到的错误是这个 -

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Spinner.setAdapter(android.widget.SpinnerAdapter)' on a

我正在创建一个游戏对话框,用户可以在其中选择一套套装。当我尝试设置适配器时,它似乎爆炸了,这里有什么问题吗?应用程序崩溃。

private void showChooseSuitDialog(){
        final Dialog chooseSuitDialog = new Dialog(myContext);
        chooseSuitDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        chooseSuitDialog.setContentView(R.layout.choose_suit_dialog);
        final Spinner suitSpinner = (Spinner)findViewById(R.id.suitSpinner);
        ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(myContext, R.array.suits, android.R.layout.simple_spinner_item);

        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        suitSpinner.setAdapter(adapter);
//        Button okButton = (Button) chooseSuitDialog.findViewById(R.id.okButton);
//        okButton.setOnClickListener(new OnClickListener() {
//            @Override
//            public void onClick(View v) {
//                validSuit = (suitSpinner.getSelectedItemPosition()+1) * 100;
//                String suitText = "";
//                if(validSuit == 100){
//                    suitText = "Diamonds";
//                }else if(validSuit == 200){
//                    suitText = "Clubs";
//                }else if(validSuit == 300) {
//                    suitText = "Hearts";
//                }else {
//                    suitText = "Spades";
//                }
//                chooseSuitDialog.dismiss();
//                Toast.makeText(myContext, "You chose " //+suitText,Toast.LENGTH_SHORT).show();
//            }
//        });
        chooseSuitDialog.show();
    }

最佳答案

使用此代码初始化微调器

final Spinner suitSpinner = (Spinner)chooseSuitDialog.findViewById(R.id.suitSpinner);

关于java.lang.NullPointerException :on spinner,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35911224/

相关文章:

java - 有没有更简单的方法来获取 Java 数组的最后一个元素?

java - 如何重置java中的标准输入和输出?

Java/Android - 如何打印出完整的堆栈跟踪?

android - 使用 Intent 删除 ListView 中的项目

android - 如何在android studio中打补丁?

c# - Java 中的 Lambda 表达式?

java - 将 ssl 与 Apache Mina 和 android 一起使用

java - 通过下载管理器下载后安装新的 apk 并退出正在运行的应用程序

java - 无需按钮即可在 Activity 开始时播放文本到语音

java - Android GC使用什么权限