2016-10-08 71 views
1

我發現一些奇怪的事情:
讓我們來看看正常DatePickerDialog的Android DatePickerDialog怪異的TextView

Without

當我加入這行設置了最大日期昨天:

datePickerDialog.getDatePicker().setMaxDate(yesterdayCal.getTime().getTime()); 

它看起來像這樣:

with

你看到區別?它在DatePicker上添加了一個TextView。我不知道爲什麼。 它看起來很奇怪,並總是顯示與選定日期相同的日期。我想刪除它?一些想法?

全碼:

DatePickerDialog datePickerDialog = new DatePickerDialog(this, R.style.DialogTheme, new DatePickerDialog.OnDateSetListener() { 
        @Override 
        public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { 

         Calendar pickedCal = Calendar.getInstance(Locale.getDefault()); 
         pickedCal.set(year, monthOfYear, dayOfMonth); 
         setToMidnight(pickedCal); 

         SimpleDateFormat dateFormat = new SimpleDateFormat("EEE dd.MM.yyyy", Locale.getDefault()); 
         String pickedDate = dateFormat.format(pickedCal.getTime()); 
         MyToast.showLong(LiveSelectActivity.this, getString(R.string.hinweis_nachtragen_gueltig, pickedDate)); 
         startNachtragen(pickedCal.getTime()); 

        } 
       }, currentCalendar.get(Calendar.YEAR), currentCalendar.get(Calendar.MONTH), currentCalendar.get(Calendar.DAY_OF_MONTH)); 

       /*Setzt das maximale Auswahldatum auf gestern.*/ 
       Calendar yesterdayCal = (Calendar) currentCalendar.clone(); 
       yesterdayCal.add(Calendar.DATE, -1); 
       datePickerDialog.getDatePicker().setMaxDate(yesterdayCal.getTime().getTime()); 

       datePickerDialog.show(); 

      } 

回答

1

出於某種原因,設置通過這條線最大日期設置的DatePickerDialog

datePickerDialog.getDatePicker().setMaxDate(yesterdayCal.getTime().getTime()); 

標題爲了去掉標題,使用setTitle("")

datePickerDialog.getDatePicker().setMaxDate(yesterdayCal.getTime().getTime()); 
datePickerDialog.setTitle(""); 
datePickerDialog.show(); 
+0

它的工作原理!一旦它解鎖,我會給你賞金! – XxGoliathusxX

+0

使用較舊版本的Android檢查此解決方案。這在現代版本中可能工作得很好,但較舊的版本可能需要更改標題。 – Knossos