java - 警报对话框内的微调器和按钮 onClick 返回 NullPointerException

标签 java android spinner floating-action-button

我在 AlertDialog 中(在 FAB 中)有 Spinner NPE

FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        // custom dialog
        final Dialog dialog = new Dialog(MainActivity.this);
        dialog.setContentView(R.layout.share_dialog_layout);

        Spinner spinner = (Spinner) findViewById(R.id.dlgSpinner);

        ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<>(MainActivity.this, android.R.layout.simple_spinner_item, itemname);
        spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
        spinner.setAdapter(spinnerArrayAdapter);

        Button dialogButton = (Button) dialog.findViewById(R.id.dlgButtonOK);
        // if button is clicked, close the custom dialog
        dialogButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                dialog.dismiss();
            }
        });

        dialog.show();
    }
});

有人知道这个问题吗?

我以某种方式能够让它显示出来,但它是空的。

最佳答案

尝试改变

Spinner spinner = (Spinner) findViewById(R.id.dlgSpinner);

Spinner spinner = (Spinner) dialog.findViewById(R.id.dlgSpinner);

关于java - 警报对话框内的微调器和按钮 onClick 返回 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34444460/

相关文章:

java - 如何使用 Java 执行 SSH 命令行?

java - 在 Microsoft botframework Android 虚拟助手客户端中提供语音 channel secret

android - ListView 暂时卡住

php - 如何在 Android 上使用 PHP 和 MySQL 根据第一个微调器过滤和填充第二个微调器

java.lang.NumberFormatException : For input string: "1,167.40" 异常

java - 在 Eclipse RCP 4.X 中使用默认命令

android - Android - 如何在不触发setOnItemSelectedListener的情况下更改微调器值

android - 当您在 Android 中点击它的外部时隐藏加载微调器

java - @ManyToMany 不是所有从数据库中获取的值

java - 如何从谷歌日历中的辅助日历中获取数据?