0

在android日期选择器中,我需要更改完成按钮的背景。如何更改日期选取器在android中完成背景和选择器背景?

代码:

private void showDateDialog() 
{ 
    Calendar c = Calendar.getInstance(); 
    int year = c.get(Calendar.YEAR); 
    int monthOfYear = c.get(Calendar.MONTH) + 1; 
    int dayOfMonth = c.get(Calendar.DAY_OF_MONTH); 

    String currentdate = year+""; 
    if(monthOfYear<10) 
     currentdate += "0"; 
    currentdate += (monthOfYear); 
    if(dayOfMonth<10) 
     currentdate += "0";    
    currentdate += dayOfMonth; 

    currentDate = Integer.parseInt(currentdate); 

    DatePickerDialog datePickerDialog = new DatePickerDialog(SelectEvent.this, new OnDateSetListener() 
    { 
     @Override 
     public void onDateSet(DatePicker view, int _year, int _monthOfYear, 
       int _dayOfMonth) 
     { 
      String date = _year+""; 
      if(_monthOfYear+1<10) 
       date += "0"; 
      date += (_monthOfYear+1); 
      if(_dayOfMonth<10) 
       date += "0";     
      date += _dayOfMonth; 

      selectedDate = Integer.parseInt(date); 
      DOB = date; 

      if(selectedDate >= currentDate) 
       eventdate.setText(_dayOfMonth+"/"+(_monthOfYear+1)+"/"+_year); 
      else 
      { 
       eventdate.setText(""); 
       showDialog("Please Select Event Date"); 
       //Toast.makeText(context, "Please Select Event Date", Toast.LENGTH_SHORT).show(); 
      } 
     } 
    }, year, monthOfYear-1, dayOfMonth); 

    datePickerDialog.setButton(DatePickerDialog.BUTTON_POSITIVE, "DONE", datePickerDialog); 
    datePickerDialog.show(); 
} 

如果我用这个代码,我只得到了默认的日期选择器,并做简单更改为DONE。 但我希望该日期选择器是https://drive.google.com/file/d/0B2NGqFM-F0bNWGl2VG93OUJpaWM/edit?usp=sharing

请给出一些想法和建议如何在Android中更改该颜色。在这个网站我搜查,但我没有得到。

感谢&问候 桑卡

回答

1
datePickerDialog.show(); 
    datePickerDialog.getButton(DatePickerDialog.BUTTON_POSITIVE).setBackgroundDrawable(getResources().getDrawable(R.drawable.browse_background)); 
    datePickerDialog.getButton(DatePickerDialog.BUTTON_POSITIVE).setTextSize(30); 
    datePickerDialog.getButton(DatePickerDialog.BUTTON_POSITIVE).setTypeface(typeface); 
    datePickerDialog.getButton(DatePickerDialog.BUTTON_POSITIVE).setTextColor(getResources().getColor(R.color.white)); 
    datePickerDialog.getButton(DatePickerDialog.BUTTON_POSITIVE).setText("DONE"); 

使用此工作的罚款。

2

试试下面的代码。它从对话框中获取按钮并在其上设置自定义的可绘制背景。

Button b = datePickerDialog.getButton(DialogInterface.BUTTON_POSITIVE); 
if(b != null) { 
    b.setBackgroundDrawable(getResources().getDrawable(R.drawable.your_custom_background_here)); 
} 
+0

嘿,这是不适用我得到空指针异常,如果我删除,如果条件。如果我写了,我没有得到任何改变。 – Navadeep

+0

您是在'datePickerDialog.setButton(...)'后面添加了这段代码吗? –

+0

您是否已经完成了它的工作? –