galaxyfreak
galaxyfreak

Reputation: 79

Spinner inside Alert Dialog and Button onClick return NullPointerException

I'm having Spinner NPE inside AlertDialog (inside FAB)

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();
    }
});

Does anyone know the problem?

I somehow was able to manage it to show up, but then it's empty.

Upvotes: 3

Views: 502

Answers (1)

Deepak Goyal
Deepak Goyal

Reputation: 4917

Try change from

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

to

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

Upvotes: 2

Related Questions