我有一個DatePickerDialog的問題,遵循Android教程的步驟。Android的DataPickerDialog onDateChanged不是射擊
鏈接一個TextView推出DatePickerDialog時被集中,你可以看到如下:
EditText fNac = (EditText)findViewById(R.id.regFecha);
fNac.setonfocusChangeListener(new View.onfocusChangeListener(){
@Override
public void onfocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
// Desde aquí lanzamos el datepicker
if (hasFocus){
DialogFragment newFragment = new DatePickerFragment();
newFragment.show(getSupportFragmentManager() , "datePicker");
}
}
做工精細,在DatePickerDialog啓動。我實例以這種方式創造了一個新的DatePickerFragment類:
import java.util.Calendar;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.os.Bundle;
import android.support.v4.app.DialogFragment;
import android.util.Log;
import android.widget.DatePicker;
public class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
private DatePickerDialog mDatePickerDialog;
@Override
public Dialog onCreateDialog(Bundle savedInstanceState){
// Usamos la fecha actual como primera fecha a mostrar
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
// Devolvemos la instancia de un Dialog con la fecha actual
mDatePickerDialog = new DatePickerDialog(getActivity(),this,year,month,day);
return mDatePickerDialog;
}
@Override
public void onDateSet(DatePicker view, int year, int month, int day) {
// TODO Auto-generated method stub
Log.v("LOG_CAT","OK");
}
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
Log.v("LOG_CAT", "Ok2");
}
}
這裏是問題。我想使用onDateChanged方法更改Dialog的標題,但它永遠不會被調用。我試圖創建一個onDateChangedListener,但DatePickerDialog沒有。
我該怎麼做?
在此先感謝。
它的工作原理!非常感謝。順便說一句,我在onCreateDialog中做了一點改動,它給了我一個錯誤,但現在一切都好了。 – 2012-08-10 08:48:32
我能夠使用它來縮小ICS和ICS之前的差距。它允許我設置在BUTTON_POSITIVE onClick中使用的日期,而不是依賴於OnDateSet,無論該對話框如何關閉,都會調用該日期。 – Cameron 2013-02-08 14:52:55
對於21目標,v7支持庫和Material Design主題,我無法獲得這個工作'onDateChanged'永遠不會被調用。 – jlindenbaum 2015-05-07 15:51:58