如果主题应用于设备,则日期选取器会被剪裁

时间:2016-03-27 18:27:09

标签: android datepicker

我使用Android开发人员链接Android Date Picker在我的应用中创建了日期选择器。

但是,当我点击按钮显示日期选择器时,日期选择器可见,但它从顶部被剪切,这是相同的屏幕截图。Date Picker Screen shot

从图像中可以清楚地看到27正在剪裁并且无法正确显示。当我在设备上应用主题时会出现此问题,而在使用默认主题时则不会发生此问题。在自定义主题的情况下,可以采取哪些步骤使视图正确显示。

1 个答案:

答案 0 :(得分:1)

我无法说出问题所在,但我使用此代码并且工作正常。

全球定义

Calendar myCalendar = Calendar.getInstance();
onCreate()中的

 //showing calendar for dob
    final DatePickerDialog.OnDateSetListener dateset = new DatePickerDialog.OnDateSetListener() {

        @Override
        public void onDateSet(DatePicker view, int year, int monthOfYear,
                              int dayOfMonth)
        {
            // TODO Auto-generated method stub
            myCalendar.set(Calendar.YEAR, year);
            myCalendar.set(Calendar.MONTH, monthOfYear);
            myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);

            updateLabel();

        }

    };


    //assuming dob is your textView to select date
    dob.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            new DatePickerDialog(Signup.this, dateset, myCalendar
                    .get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
                    myCalendar.get(Calendar.DAY_OF_MONTH)).show();
        }
    });

在onCreate之外,新功能

 private void updateLabel() {

    String myFormat = "MM-dd-yyyy"; //In which you need put here
    SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);

    dob.setText(sdf.format(myCalendar.getTime()));
}