Skip to content

Commit 692fe6f

Browse files
committed
fix #178
1 parent b292d43 commit 692fe6f

File tree

1 file changed

+22
-34
lines changed

1 file changed

+22
-34
lines changed

BRPickerView/DatePickerView/BRDatePickerView.m

+22-34
Original file line numberDiff line numberDiff line change
@@ -206,18 +206,6 @@ - (void)setupDateArray {
206206
self.minuteArr = [self getMinuteArr:self.mSelectDate.br_year month:self.mSelectDate.br_month day:self.mSelectDate.br_day hour:self.mSelectDate.br_hour];
207207
self.secondArr = [self getSecondArr:self.mSelectDate.br_year month:self.mSelectDate.br_month day:self.mSelectDate.br_day hour:self.mSelectDate.br_hour minute:self.mSelectDate.br_minute];
208208
}
209-
210-
// 设置默认选中的索引
211-
self.yearIndex = [self getIndexWithArray:self.yearArr object:[self getYearNumber:self.mSelectDate.br_year]];
212-
self.monthIndex = [self getIndexWithArray:self.monthArr object:[self getMDHMSNumber:self.mSelectDate.br_month]];
213-
self.dayIndex = [self getIndexWithArray:self.dayArr object:[self getMDHMSNumber:self.mSelectDate.br_day]];
214-
if (self.pickerMode == BRDatePickerModeYMDH && self.isShowAMAndPM) {
215-
self.hourIndex = (self.mSelectDate.br_hour < 12 ? 0 : 1);
216-
} else {
217-
self.hourIndex = [self getIndexWithArray:self.hourArr object:[self getMDHMSNumber:self.mSelectDate.br_hour]];
218-
}
219-
self.minuteIndex = [self getIndexWithArray:self.minuteArr object:[self getMDHMSNumber:self.mSelectDate.br_minute]];
220-
self.secondIndex = [self getIndexWithArray:self.secondArr object:[self getMDHMSNumber:self.mSelectDate.br_second]];
221209
}
222210

223211
- (void)setupDateFormatter:(BRDatePickerMode)mode {
@@ -409,50 +397,50 @@ - (void)reloadDateArrayWithUpdateMonth:(BOOL)updateMonth updateDay:(BOOL)updateD
409397
}
410398
}
411399

412-
#pragma mark - 滚动到指定时间的位置
400+
#pragma mark - 滚动到指定时间的位置(更新选择的索引)
413401
- (void)scrollToSelectDate:(NSDate *)selectDate animated:(BOOL)animated {
414-
NSInteger yearIndex = [self getIndexWithArray:self.yearArr object:[self getYearNumber:selectDate.br_year]];
415-
NSInteger monthIndex = [self getIndexWithArray:self.monthArr object:[self getMDHMSNumber:selectDate.br_month]];
416-
NSInteger dayIndex = [self getIndexWithArray:self.dayArr object:[self getMDHMSNumber:selectDate.br_day]];
417-
NSInteger hourIndex = 0;
402+
self.yearIndex = [self getIndexWithArray:self.yearArr object:[self getYearNumber:selectDate.br_year]];
403+
self.monthIndex = [self getIndexWithArray:self.monthArr object:[self getMDHMSNumber:selectDate.br_month]];
404+
self.dayIndex = [self getIndexWithArray:self.dayArr object:[self getMDHMSNumber:selectDate.br_day]];
418405
if (self.pickerMode == BRDatePickerModeYMDH && self.isShowAMAndPM) {
419-
hourIndex = selectDate.br_hour < 12 ? 0 : 1;
406+
self.hourIndex = selectDate.br_hour < 12 ? 0 : 1;
420407
} else {
421-
hourIndex = [self getIndexWithArray:self.hourArr object:[self getMDHMSNumber:selectDate.br_hour]];
408+
self.hourIndex = [self getIndexWithArray:self.hourArr object:[self getMDHMSNumber:selectDate.br_hour]];
422409
}
423-
NSInteger minuteIndex = [self getIndexWithArray:self.minuteArr object:[self getMDHMSNumber:selectDate.br_minute]];
424-
NSInteger secondIndex = [self getIndexWithArray:self.secondArr object:[self getMDHMSNumber:selectDate.br_second]];
410+
self.minuteIndex = [self getIndexWithArray:self.minuteArr object:[self getMDHMSNumber:selectDate.br_minute]];
411+
self.secondIndex = [self getIndexWithArray:self.secondArr object:[self getMDHMSNumber:selectDate.br_second]];
412+
425413
NSArray *indexArr = nil;
426414
if (self.pickerMode == BRDatePickerModeYMDHMS) {
427-
indexArr = @[@(yearIndex), @(monthIndex), @(dayIndex), @(hourIndex), @(minuteIndex), @(secondIndex)];
415+
indexArr = @[@(self.yearIndex), @(self.monthIndex), @(self.dayIndex), @(self.hourIndex), @(self.minuteIndex), @(self.secondIndex)];
428416
} else if (self.pickerMode == BRDatePickerModeYMDHM) {
429-
indexArr = @[@(yearIndex), @(monthIndex), @(dayIndex), @(hourIndex), @(minuteIndex)];
417+
indexArr = @[@(self.yearIndex), @(self.monthIndex), @(self.dayIndex), @(self.hourIndex), @(self.minuteIndex)];
430418
} else if (self.pickerMode == BRDatePickerModeYMDH) {
431-
indexArr = @[@(yearIndex), @(monthIndex), @(dayIndex), @(hourIndex)];
419+
indexArr = @[@(self.yearIndex), @(self.monthIndex), @(self.dayIndex), @(self.hourIndex)];
432420
} else if (self.pickerMode == BRDatePickerModeMDHM) {
433-
indexArr = @[@(monthIndex), @(dayIndex), @(hourIndex), @(minuteIndex)];
421+
indexArr = @[@(self.monthIndex), @(self.dayIndex), @(self.hourIndex), @(self.minuteIndex)];
434422
} else if (self.pickerMode == BRDatePickerModeYMD) {
435423
if ([self.pickerStyle.language hasPrefix:@"zh"]) {
436-
indexArr = @[@(yearIndex), @(monthIndex), @(dayIndex)];
424+
indexArr = @[@(self.yearIndex), @(self.monthIndex), @(self.dayIndex)];
437425
} else {
438-
indexArr = @[@(dayIndex), @(monthIndex), @(yearIndex)];
426+
indexArr = @[@(self.dayIndex), @(self.monthIndex), @(self.yearIndex)];
439427
}
440428
} else if (self.pickerMode == BRDatePickerModeYM) {
441429
if ([self.pickerStyle.language hasPrefix:@"zh"]) {
442-
indexArr = @[@(yearIndex), @(monthIndex)];
430+
indexArr = @[@(self.yearIndex), @(self.monthIndex)];
443431
} else {
444-
indexArr = @[@(monthIndex), @(yearIndex)];
432+
indexArr = @[@(self.monthIndex), @(self.yearIndex)];
445433
}
446434
} else if (self.pickerMode == BRDatePickerModeY) {
447-
indexArr = @[@(yearIndex)];
435+
indexArr = @[@(self.yearIndex)];
448436
} else if (self.pickerMode == BRDatePickerModeMD) {
449-
indexArr = @[@(monthIndex), @(dayIndex)];
437+
indexArr = @[@(self.monthIndex), @(self.dayIndex)];
450438
} else if (self.pickerMode == BRDatePickerModeHMS) {
451-
indexArr = @[@(hourIndex), @(minuteIndex), @(secondIndex)];
439+
indexArr = @[@(self.hourIndex), @(self.minuteIndex), @(self.secondIndex)];
452440
} else if (self.pickerMode == BRDatePickerModeHM) {
453-
indexArr = @[@(hourIndex), @(minuteIndex)];
441+
indexArr = @[@(self.hourIndex), @(self.minuteIndex)];
454442
} else if (self.pickerMode == BRDatePickerModeMS) {
455-
indexArr = @[@(minuteIndex), @(secondIndex)];
443+
indexArr = @[@(self.minuteIndex), @(self.secondIndex)];
456444
}
457445
if (!indexArr) return;
458446
for (NSInteger i = 0; i < indexArr.count; i++) {

0 commit comments

Comments
 (0)