DatePicker 空指针异常

DatePicker NullPointerException

我想使用 DatePicker,但在单击按钮时出现 NullPointerException。

我在 google 地图上使用长按侦听器来添加标记...此日期选择器仅用于保存在外部数据库中。 在标记中我只显示标题和摘要。

代码

googlemap.setOnMapLongClickListener(new GoogleMap.OnMapLongClickListener() {

        public void onMapLongClick(final LatLng latlng) {
            LayoutInflater li = LayoutInflater.from(context);
            final View v = li.inflate(R.layout.alertlayout, null);
            AlertDialog.Builder builder = new AlertDialog.Builder(context);
            builder.setView(v);
            builder.setCancelable(false);

            builder.setPositiveButton("Criar", new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface dialog, int which) {
                    LayoutInflater li = LayoutInflater.from(context);
                    final View v = li.inflate(R.layout.alertlayout, null);
                    EditText title = (EditText) v.findViewById(R.id.ettitle);
                    EditText snippet = (EditText) v.findViewById(R.id.etsnippet);
                    //EditText data = (EditText) findViewById(R.id.etdata);
                   // EditText data = (EditText) findViewById(R.id.etdata);
                    DatePicker data = (DatePicker) findViewById(R.id.datePicker);
                    String edata = (data.getDayOfMonth()+ "/" + data.getMonth() + "/" + data.getYear()); //line 84
                    googlemap.addMarker(new MarkerOptions()
                                    .title(title.getText().toString())
                                    .snippet(snippet.getText().toString())
                                    .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE))
                                    .position(latlng)
                                    //.snippet(data.getText().toString())


                    );
                  //  String edata = data.getText().toString();
                    dao = new LocalizacoesDAO(context);
                    dao.inserirLocalizacoes(new Localizacoes(title.getText().toString(),snippet.getText().toString(),latlng, edata));
                }
            });

            builder.setNegativeButton("Cancelar", new DialogInterface.OnClickListener() {

                public void onClick(DialogInterface dialog, int which) {
                    dialog.cancel();
                }
            });

            AlertDialog alert = builder.create();
            alert.show();

        }
    });

错误

04-04 20:20:35.982    2734-2734/com.partytime.myapplication E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.NullPointerException
        at com.partytime.myapplication.MainActivity.onClick(MainActivity.java:84)
        at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:137)
        at android.app.ActivityThread.main(ActivityThread.java:4963)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:511)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
        at dalvik.system.NativeStart.main(Native Method)

您正在将 edata 作为 function.use 这个

   String edata = data.getDayOfMonth()+ "/" + data.getMonth() + "/"  + data.getYear();

或者将日期、月份和年份作为单独的字符串并将它们合并为一个字符串。

发现我的错误 ¬¬

我没有在正确的视图中调用日期选择器 ¬¬

DatePicker data = (DatePicker) v.findViewById(R.id.datePicker);