2012-01-30 102 views
2

代碼:爲什麼我的DatePicker沒有調用OnDateChangeListener回調?

final Time today = new Time(); 
    today.setToNow(); 
    OnDateChangedListener dateChangeListener = new OnDateChangedListener() { 

     public void onDateChanged(DatePicker view, int year, int monthOfYear, 
       int dayOfMonth) { 

      android.util.Log.i(TAG, "entered onDateChanged"); //TODO: 

     } 
    }; 
    datePickerDataInicio.init(today.year, today.month, today.monthDay, dateChangeListener); 

所以,每當我改變紡紗由日,月或年,它似乎並沒有被調用。我錯過了什麼?

謝謝!

編輯!

對不起,你們是關注的缺陷。我只是從代碼的另一個角度呼叫DatePicker.init()與空監聽器。謝謝。

回答

1

嘗試這個代碼,它是工作..

// Creating dialog 
     @Override 
     protected Dialog onCreateDialog(int id) { 
     c = Calendar.getInstance(); 
     int cyear = c.get(Calendar.YEAR); 
     int cmonth = c.get(Calendar.MONTH); 
     int cday = c.get(Calendar.DAY_OF_MONTH); 
     return new DatePickerDialog(this, mDateSetListener, cyear, cmonth, cday); 
     } 

    private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() { 
    // onDateSet method 
    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { 
     Log.e("----------------", "D.O.B "+monthOfYear+""+dayOfMonth+""+year); 
     date_selected = String.valueOf(monthOfYear+1)+" /"+String.valueOf(dayOfMonth)+" /"+String.valueOf(year); 
    } 
    }; 

調用此方法的onClick任何按鈕或文字

DATE_DIALOG_ID=1; 
showDialog(DATE_DIALOG_ID); 
+0

這種方法最終調用onDateSet的兩倍,但它比沒有得到所謂的更好在所有?! – whyoz 2013-06-11 21:35:05

相關問題