我正在使用具有日期选择器的注册表单。当用户选择一个日期时,TextView更新将以格式(MM-dd-YYYY)显示选定的日期。当用户点击提交按钮时,它将表单数据传递给mysql数据库。它显然不插入日期,因为它没有以(yyyy-MM-dd)的正确格式。我尝试使用SimpleDateFormat方法,但无法使其工作。有人可以帮助我了解如何格式化日期吗?将日期格式化为mysql格式
datedob = (TextView) findViewById(R.id.reg_dob);
String dob = datedob.getText().toString();
我的日期选择器代码:
public void populateSetDate(int year, int month, int day) {
datedob = (TextView)findViewById(R.id.reg_dob);
datedob.setText(month + "-" + day + "-" + year);
}
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public class SelectDateFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar calendar = Calendar.getInstance();
int yy = calendar.get(Calendar.YEAR);
int mm = calendar.get(Calendar.MONTH);
int dd = calendar.get(Calendar.DAY_OF_MONTH);
return new DatePickerDialog(getActivity(), this, yy, mm, dd);
}
public void onDateSet(DatePicker view, int yy, int mm, int dd) {
populateSetDate(yy, mm+1, dd);
}
}
所以你说,从onDateSet方法拉日期会比从TextView中拉出日期更好?如果是这样,我将如何拉它? – Carbongixxer
我想我已经在上面的答案中解释了它的要点:创建一个'Calendar'实例,每次通过'onDateSet(...)'进入新值。然后,您可以将它用作“TextView”和最终插入到数据库中的值的后备数据模型。请注意,这只是我会考虑的方法 - 它不是* only *解决方案。由你决定如何实际执行。 –