我正在构建我的Android自定义应用程序。我已经实现了一个datepicker
对话框,它需要时间来挑选时间。问题是时间选择器不能正确格式化我选择的内容(例如,如果选择03
,则datepicker
返回3
)。Integer.parseInt重新格式化字符串?
为了解决这个问题,我实现了这个代码:
TimePickerDialog.OnTimeSetListener timePickerListener =
new TimePickerDialog.OnTimeSetListener() {
public void onTimeSet(TimePicker view, int selectedHour,
int selectedMinute) {
hour = selectedHour;
minute = selectedMinute;
long date = calendarView.getDate();
DateFormat df = new DateFormat();
String format = (String) df.format("dd/MM/yyyy", date);
Date hourdate = new Date();
hourdate.setHours(hour);
hourdate.setMinutes(minute);
SimpleDateFormat hourformatter = new SimpleDateFormat("HH");
SimpleDateFormat minuteformatter = new SimpleDateFormat("mm");
String formattedhour = hourformatter.format(hourdate);
String formattedminute = minuteformatter.format(hourdate);
Log.v(StorybookContentProvider.TAG_LOG, "formattedhour" + Integer.parseInt(formattedminute) + formattedminute);
as.setDate(format);
as.setRangeStart("");
as.setRangeFinish("");
as.setHour(Integer.parseInt(formattedhour));
Log.v(StorybookContentProvider.TAG_LOG, "formattedhoursaving" + Integer.parseInt(formattedminute));
as.setMinutes(Integer.parseInt(formattedminute));
as.setTabColor(as.tabHost, true);
的问题是:formattedhour
是,我想格式化的方式,(如果选择03
返回03
),但如果我这样做Integer.parseInt(formattedhour)
,它返回3!它删除格式。这是一个错误吗?
所有这段文字&代码只是询问'Integer.parseInt(“03”)是否返回'3'?好的,这就是parseInt所做的。阅读[*手册*](http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/Integer.html#parseInt(java.lang.String))! – alfasin
3和03是相同的,它们都代表三个 –