警报对话框和按钮 onClick 内的微调器 return NullPointerException

Spinner inside Alert Dialog and Button onClick return NullPointerException

我在 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);