Skip to content

Commit 24dd0b0

Browse files
committed
优化代码
1 parent f93c4aa commit 24dd0b0

File tree

4 files changed

+177
-153
lines changed

4 files changed

+177
-153
lines changed

BRPickerView/AddressPickerView/BRAddressPickerView.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ typedef void(^BRAddressResultBlock)(BRProvinceModel * _Nullable province, BRCity
4949
@property (nullable, nonatomic, copy) BRAddressResultBlock changeBlock;
5050

5151
/**
52-
* 地区数据源(不传或为nil,默认就获取框架内 BRCity.json 文件的数据)
52+
* 地区数据源(不传或为nil,默认就获取本地 BRCity.json 文件的数据)
5353
* 1.可以传 JSON数组,要注意 层级结构 和 key 要与 BRCity.json 保持一致
5454
* 2.可以传 模型数组(NSArray <BRProvinceModel *> * 类型),自己解析数据源 只需要注意层级结构就行
5555
*/

BRPickerView/DatePickerView/BRDatePickerView+BR.h

+6-6
Original file line numberDiff line numberDiff line change
@@ -62,17 +62,17 @@ NS_ASSUME_NONNULL_BEGIN
6262

6363
- (NSString *)getMDHMSNumber:(NSInteger)number;
6464

65-
- (NSString *)getYearText:(NSString *)yearString;
65+
- (NSString *)getYearText:(NSArray *)yearArr row:(NSInteger)row;
6666

67-
- (NSString *)getMonthText:(NSString *)monthString monthNames:(NSArray *)monthNames;
67+
- (NSString *)getMonthText:(NSArray *)monthArr row:(NSInteger)row monthNames:(NSArray *)monthNames;
6868

69-
- (NSString *)getDayText:(NSString *)dayString mSelectDate:(NSDate *)mSelectDate;
69+
- (NSString *)getDayText:(NSArray *)dayArr row:(NSInteger)row mSelectDate:(NSDate *)mSelectDate;
7070

71-
- (NSString *)getHourText:(NSString *)hourString;
71+
- (NSString *)getHourText:(NSArray *)hourArr row:(NSInteger)row;
7272

73-
- (NSString *)getMinuteText:(NSString *)minuteString;
73+
- (NSString *)getMinuteText:(NSArray *)minuteArr row:(NSInteger)row;
7474

75-
- (NSString *)getSecondText:(NSString *)secondString;
75+
- (NSString *)getSecondText:(NSArray *)secondArr row:(NSInteger)row;
7676

7777
- (NSString *)getAMText;
7878

BRPickerView/DatePickerView/BRDatePickerView+BR.m

+36-6
Original file line numberDiff line numberDiff line change
@@ -484,15 +484,25 @@ - (NSString *)getMDHMSNumber:(NSInteger)number {
484484
return string;
485485
}
486486

487-
- (NSString *)getYearText:(NSString *)yearString {
487+
- (NSString *)getYearText:(NSArray *)yearArr row:(NSInteger)row {
488+
NSInteger index = 0;
489+
if (row >= 0) {
490+
index = MIN(row, yearArr.count - 1);
491+
}
492+
NSString *yearString = [yearArr objectAtIndex:index];
488493
if (self.addCustomString && [yearString isEqualToString:self.addCustomString]) {
489494
return yearString;
490495
}
491496
NSString *yearUnit = self.showUnitType == BRShowUnitTypeAll ? [self getYearUnit] : @"";
492497
return [NSString stringWithFormat:@"%@%@", yearString, yearUnit];
493498
}
494499

495-
- (NSString *)getMonthText:(NSString *)monthString monthNames:(NSArray *)monthNames {
500+
- (NSString *)getMonthText:(NSArray *)monthArr row:(NSInteger)row monthNames:(NSArray *)monthNames {
501+
NSInteger index = 0;
502+
if (row >= 0) {
503+
index = MIN(row, monthArr.count - 1);
504+
}
505+
NSString *monthString = [monthArr objectAtIndex:index];
496506
if ([self.pickerStyle.language hasPrefix:@"zh"]) {
497507
self.monthNameType = BRMonthNameTypeNumber;
498508
}
@@ -507,7 +517,12 @@ - (NSString *)getMonthText:(NSString *)monthString monthNames:(NSArray *)monthNa
507517
return [NSString stringWithFormat:@"%@%@", monthString, monthUnit];
508518
}
509519

510-
- (NSString *)getDayText:(NSString *)dayString mSelectDate:(NSDate *)mSelectDate {
520+
- (NSString *)getDayText:(NSArray *)dayArr row:(NSInteger)row mSelectDate:(NSDate *)mSelectDate {
521+
NSInteger index = 0;
522+
if (row >= 0) {
523+
index = MIN(row, dayArr.count - 1);
524+
}
525+
NSString *dayString = [dayArr objectAtIndex:index];
511526
if (self.isShowToday && mSelectDate.br_year == [NSDate date].br_year && mSelectDate.br_month == [NSDate date].br_month && [dayString integerValue] == [NSDate date].br_day) {
512527
return [NSBundle br_localizedStringForKey:@"今天" language:self.pickerStyle.language];
513528
}
@@ -521,20 +536,35 @@ - (NSString *)getDayText:(NSString *)dayString mSelectDate:(NSDate *)mSelectDate
521536
return dayString;
522537
}
523538

524-
- (NSString *)getHourText:(NSString *)hourString {
539+
- (NSString *)getHourText:(NSArray *)hourArr row:(NSInteger)row {
540+
NSInteger index = 0;
541+
if (row >= 0) {
542+
index = MIN(row, hourArr.count - 1);
543+
}
544+
NSString *hourString = [hourArr objectAtIndex:index];
525545
if (self.addCustomString && [hourString isEqualToString:self.addCustomString]) {
526546
return hourString;
527547
}
528548
NSString *hourUnit = self.showUnitType == BRShowUnitTypeAll ? [self getHourUnit] : @"";
529549
return [NSString stringWithFormat:@"%@%@", hourString, hourUnit];
530550
}
531551

532-
- (NSString *)getMinuteText:(NSString *)minuteString {
552+
- (NSString *)getMinuteText:(NSArray *)minuteArr row:(NSInteger)row {
553+
NSInteger index = 0;
554+
if (row >= 0) {
555+
index = MIN(row, minuteArr.count - 1);
556+
}
557+
NSString *minuteString = [minuteArr objectAtIndex:index];
533558
NSString *minuteUnit = self.showUnitType == BRShowUnitTypeAll ? [self getMinuteUnit] : @"";
534559
return [NSString stringWithFormat:@"%@%@", minuteString, minuteUnit];
535560
}
536561

537-
- (NSString *)getSecondText:(NSString *)secondString {
562+
- (NSString *)getSecondText:(NSArray *)secondArr row:(NSInteger)row {
563+
NSInteger index = 0;
564+
if (row >= 0) {
565+
index = MIN(row, secondArr.count - 1);
566+
}
567+
NSString *secondString = [secondArr objectAtIndex:index];
538568
NSString *secondUnit = self.showUnitType == BRShowUnitTypeAll ? [self getSecondUnit] : @"";
539569
return [NSString stringWithFormat:@"%@%@", secondString, secondUnit];
540570
}

0 commit comments

Comments
 (0)