我正在構建我的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是相同的,它們都代表三個 –