package cn.com.basic.face.dialog;
|
|
import android.app.AlertDialog;
|
import android.content.Context;
|
import android.graphics.Color;
|
import android.os.Bundle;
|
import android.support.annotation.NonNull;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.widget.DatePicker;
|
|
import com.bsk.zhangbo.demoforbsk.R;
|
import com.lidroid.xutils.ViewUtils;
|
import com.lidroid.xutils.view.annotation.event.OnClick;
|
|
import java.util.Calendar;
|
import java.util.Date;
|
import java.util.Locale;
|
|
import cn.com.basic.face.base.MainActivity;
|
import cn.com.basic.face.util.OkClickedListener;
|
|
public class BirthdayPickerDialog extends AlertDialog implements
|
DatePicker.OnDateChangedListener{
|
private final DatePicker mDatePicker;
|
private final OkClickedListener mDateSetListener;
|
private final Calendar mCalendar;
|
private View view;
|
public BirthdayPickerDialog(OkClickedListener listener, Date date) {
|
super(MainActivity.getInstance(), android.R.style.Theme_Holo_Light_Dialog_NoActionBar);
|
mDateSetListener = listener;
|
mCalendar = Calendar.getInstance(Locale.CHINA);
|
mCalendar.setTime(date);
|
Context themeContext = getContext();
|
LayoutInflater inflater = LayoutInflater.from(themeContext);
|
view = inflater.inflate(R.layout.dialog_date_picker, null);
|
view.setBackgroundColor(Color.WHITE);
|
|
ViewUtils.inject(this, view);
|
mDatePicker = (DatePicker) view.findViewById(R.id.datePicker);
|
mDatePicker.init(mCalendar.get(Calendar.YEAR), mCalendar.get(Calendar.MONTH), mCalendar.get(Calendar.DAY_OF_MONTH), this);
|
|
show();
|
setContentView(view);
|
}
|
|
@Override
|
public void onDateChanged(DatePicker datePicker, int year, int month, int day) {
|
mDatePicker.init(year, month, day, this);
|
}
|
|
public interface OnDateSetListener {
|
void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth);
|
}
|
|
@OnClick(R.id.date_picker_ok)
|
public void date_picker_ok_click(View view) {
|
if (mDateSetListener != null) {
|
mDatePicker.clearFocus();
|
mDateSetListener.onSelected(mDatePicker.getYear()+"-"+
|
mDatePicker.getMonth()+"-"+mDatePicker.getDayOfMonth());
|
cancel();
|
}
|
}
|
|
@OnClick(R.id.date_picker_cancel)
|
public void date_picker_cancel_click(View view) {
|
cancel();
|
}
|
|
public void onRestoreInstanceState(Bundle savedInstanceState) {
|
super.onRestoreInstanceState(savedInstanceState);
|
}
|
}
|