2013-08-26 26 views
0

首先,這裏是代碼:日期選擇正確輸出的一切,除了月

private DatePickerDialog.OnDateSetListener pDateSetListener = new DatePickerDialog.OnDateSetListener() { 

     public void onDateSet(DatePicker view, int year, int monthOfYear, 
       int dayOfMonth) { 
      pYear = year; 
      pMonth = monthOfYear; 
      pDay = dayOfMonth; 
      updateDisplay(); 
     } 
    }; 

    /** Updates the date in the TextView */ 
    private void updateDisplay() { 
     String pMonthName; 
     pMonthName = cal.getDisplayName(pMonth + 1, Calendar.LONG, Locale.US); 
     pPickDate.setText(pMonthName + " " + pDay + ", " + pYear); 
    } 

當我輸出的日期選擇在TextView,我得到:

null, 26, 2013

有人可以看到我的我錯了嗎?我知道這是在getDisplayName()行(我認爲)。

回答

0

您對cal.getDisplayName調用應該是:

pMonthName = cal.getDisplayName(Calendar.MONTH, Calendar.LONG, Locale.US); 

月份將來自於cal

UPDATE設定值 你可以備選地,設置

pMonthName = new DateFormatSymbols().getMonths()[pMonth]; 
+0

問題那麼,我想,這是否會在本月使用。不是從Datepicker設置的月份。 – KickingLettuce

+0

請參閱上面的更新。 – HexAndBugs

+0

顯示的第一個方法將使用Calendar實例cal中設置的月份。如果您不想將cal設置爲日期選擇器的日期,則可以在更新原始答案中使用該方法。 – HexAndBugs

相關問題