对话框中的微调器:NullPointerException

Spinner in dialog : NullPointerException

美好的一天,我在对话框中使用微调器并生成

Error msg- ` java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Spinner.setAdapter(android.widget.SpinnerAdapter)' on a null object reference at com.example.amw51.ygeianapp.Activity.AwardActivity.showAddItem(AwardActivity.java:259)

Java代码

 dialog.setContentView(R.layout.job_add_detials_layout);
Spinner   jobSpinner = (Spinner)findViewById(R.id.select_job_spinner);
 jobSpinner = (Spinner) findViewById(R.id.select_job_spinner);
                List<String> list = new ArrayList<String>();
                list.add("Android");
                list.add("Java");
                list.add("Spinner Data");
                list.add("Spinner Adapter");
                list.add("Spinner Example");

                ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>
                        (this, android.R.layout.simple_spinner_item,list);

                dataAdapter.setDropDownViewResource
                        (android.R.layout.simple_spinner_dropdown_item);

                jobSpinner.setAdapter(dataAdapter);
 dialog.show();              

XML布局

 <Spinner
        android:id="@+id/select_job_spinner"
        android:layout_marginTop="15dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="15dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:textColor="@color/colorPrimary"/> 

我到处搜索,但没有找到任何合适的解决方案。 `

不是从对话框本身检索Spinner。你应该执行 dialog.findViewById() 而不是普通的 findViewById():

dialog.setContentView(R.layout.job_add_detials_layout);
dialog.create();
Spinner jobSpinner = (Spinner) dialog.findViewById(R.id.select_job_spinner);
// init spinner
dialog.show();