2013-08-12 3 views
1

내 DatePicker 선언에 문제가있는 것 같습니다. null 포인터가있는 위치 :nullpointerException on Datepicker

pickerDate.init (year, month, day, null);

내 코드 :

private static DatePicker pickerDate; 

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     cc = this; 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
       WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     setContentView(R.layout.activity_reservation); 
     Button btn_add = (Button) findViewById(R.id.btn_add_reservation); 
     pickerDate = (DatePicker) findViewById(R.id.datePickerId); 
     final Calendar c = Calendar.getInstance(); 
     year = c.get(Calendar.YEAR); 
     month = c.get(Calendar.MONTH); 
     day = c.get(Calendar.DAY_OF_MONTH); 
     pickerDate.init(0, 0, 0, null); 
//  pickerDate.init(year, month, day, null); 
     btn_add.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { open_a_form_page(); } }); 
    } 
} 

내 XML을 :

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:padding="50dp" > 

<DatePicker 
     android:id="@+id/datePickerId" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" /> 


</RelativeLayout> 

및 오류 쇼 :

08-12 01:06:49.790: E/AndroidRuntime(2410): FATAL EXCEPTION: main 
08-12 01:06:49.790: E/AndroidRuntime(2410): java.lang.RuntimeException: Unable to start activity ComponentInfo{xx.xx.cc/ee.rr.name_app.XActivity}: java.lang.NullPointerException 

어떤 아이디어?

+0

을하고 nullpointer를 슬로우 내가 변경 한 유일한 것 (가정해야 함)은 년 및 월 (int) 앞에 유형을 추가하는 것입니다. –

답변

3

이것은 Datepicker가 현재 활동과 다른 XML 파일에 있기 때문에 발생하는 것 같습니다. 당신은 당신이 사용하고있는 활동의 XML로 날짜 선택기를 이동하거나 다른 파일을 팽창하고 거기에서이 같은 피커 가지고 가야 하나 : 나는 새로운 anrdoid 응용 프로그램에서 자체적으로 코드를 복제

View theInflatedView = getLayoutInflater().inflate(R.layout.otherxmlfile, null); 
DatePicker pickerDate = (DatePicker) theInflatedView.findViewById(R.id.datePickerId); 
+0

당신의 권리, 나는 다른 사용자 정의 대화 상자 xml 덕분에 사용합니다. – Armanoide

관련 문제