From 83b9d5c682b21d88133f24da0f94dd56bd79e687 Mon Sep 17 00:00:00 2001
From: 单军华
Date: Thu, 19 Jul 2018 13:38:55 +0800
Subject: [PATCH] change
---
screendisplay/Pods/MOFSPickerManager/MOFSPickerManagerDemo/MOFSPickerManager/MOFSPickerManager.m | 310 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 310 insertions(+), 0 deletions(-)
diff --git a/screendisplay/Pods/MOFSPickerManager/MOFSPickerManagerDemo/MOFSPickerManager/MOFSPickerManager.m b/screendisplay/Pods/MOFSPickerManager/MOFSPickerManagerDemo/MOFSPickerManager/MOFSPickerManager.m
new file mode 100755
index 0000000..e43b903
--- /dev/null
+++ b/screendisplay/Pods/MOFSPickerManager/MOFSPickerManagerDemo/MOFSPickerManager/MOFSPickerManager.m
@@ -0,0 +1,310 @@
+//
+// MOFSPickerManager.m
+// MOFSPickerManager
+//
+// Created by luoyuan on 16/8/26.
+// Copyright �� 2016��� luoyuan. All rights reserved.
+//
+
+#import "MOFSPickerManager.h"
+
+@implementation MOFSPickerManager
+
++ (MOFSPickerManager *)shareManger {
+ static MOFSPickerManager *manager = nil;
+ static dispatch_once_t onceToken;
+ dispatch_once(&onceToken, ^{
+ manager = [self new];
+ });
+ return manager;
+}
+
+- (MOFSDatePicker *)datePicker {
+ if (!_datePicker) {
+ _datePicker = [MOFSDatePicker new];
+ }
+ return _datePicker;
+}
+
+- (MOFSPickerView *)pickView {
+ if (!_pickView) {
+ _pickView = [MOFSPickerView new];
+ }
+ return _pickView;
+}
+
+- (MOFSAddressPickerView *)addressPicker {
+ if (!_addressPicker) {
+ _addressPicker = [MOFSAddressPickerView new];
+ }
+ return _addressPicker;
+}
+
+// ================================DatePicker===================================//
+
+- (void)showDatePickerWithTag:(NSInteger)tag commitBlock:(DatePickerCommitBlock)commitBlock cancelBlock:(DatePickerCancelBlock)cancelBlock {
+ self.datePicker.datePickerMode = UIDatePickerModeDate;
+
+ self.datePicker.toolBar.cancelBarTitle = @"������";
+ self.datePicker.toolBar.commitBarTitle = @"������";
+
+ self.datePicker.minimumDate = nil;
+ self.datePicker.maximumDate = nil;
+ [self.datePicker showMOFSDatePickerViewWithTag:tag firstDate:nil commit:^(NSDate *date) {
+ if (commitBlock) {
+ commitBlock(date);
+ }
+ } cancel:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+}
+
+- (void)showDatePickerWithTag:(NSInteger)tag datePickerMode:(UIDatePickerMode)mode commitBlock:(DatePickerCommitBlock)commitBlock cancelBlock:(DatePickerCancelBlock)cancelBlock {
+ self.datePicker.datePickerMode = mode;
+
+ self.datePicker.toolBar.cancelBarTitle = @"������";
+ self.datePicker.toolBar.commitBarTitle = @"������";
+
+ self.datePicker.minimumDate = nil;
+ self.datePicker.maximumDate = nil;
+ [self.datePicker showMOFSDatePickerViewWithTag:tag firstDate:nil commit:^(NSDate *date) {
+ if (commitBlock) {
+ commitBlock(date);
+ }
+ } cancel:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+}
+
+- (void)showDatePickerWithTag:(NSInteger)tag title:(NSString *)title cancelTitle:(NSString *)cancelTitle commitTitle:(NSString *)commitTitle datePickerMode:(UIDatePickerMode)mode commitBlock:(DatePickerCommitBlock)commitBlock cancelBlock:(DatePickerCancelBlock)cancelBlock {
+ self.datePicker.datePickerMode = mode;
+
+ self.datePicker.toolBar.titleBarTitle = title;
+ self.datePicker.toolBar.cancelBarTitle = cancelTitle;
+ self.datePicker.toolBar.commitBarTitle = commitTitle;
+
+ self.datePicker.minimumDate = nil;
+ self.datePicker.maximumDate = nil;
+ [self.datePicker showMOFSDatePickerViewWithTag:tag firstDate:nil commit:^(NSDate *date) {
+ if (commitBlock) {
+ commitBlock(date);
+ }
+ } cancel:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+}
+
+- (void)showDatePickerWithTag:(NSInteger)tag firstDate:(NSDate *)firstDate minDate:(NSDate *)minDate maxDate:(NSDate *)maxDate datePickerMode:(UIDatePickerMode)mode commitBlock:(DatePickerCommitBlock)commitBlock cancelBlock:(DatePickerCancelBlock)cancelBlock {
+ self.datePicker.datePickerMode = mode;
+
+ self.datePicker.toolBar.cancelBarTitle = @"������";
+ self.datePicker.toolBar.commitBarTitle = @"������";
+
+ self.datePicker.minimumDate = minDate;
+ self.datePicker.maximumDate = maxDate;
+
+ [self.datePicker showMOFSDatePickerViewWithTag:tag firstDate:firstDate commit:^(NSDate *date) {
+ if (commitBlock) {
+ commitBlock(date);
+ }
+ } cancel:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+}
+
+
+- (void)showDatePickerWithTitle:(NSString *)title cancelTitle:(NSString *)cancelTitle commitTitle:(NSString *)commitTitle firstDate:(NSDate *)firstDate minDate:(NSDate *)minDate maxDate:(NSDate *)maxDate datePickerMode:(UIDatePickerMode)mode tag:(NSInteger)tag commitBlock:(DatePickerCommitBlock)commitBlock cancelBlock:(DatePickerCancelBlock)cancelBlock {
+ self.datePicker.datePickerMode = mode;
+
+ self.datePicker.toolBar.titleBarTitle = title;
+ self.datePicker.toolBar.cancelBarTitle = cancelTitle;
+ self.datePicker.toolBar.commitBarTitle = commitTitle;
+
+ self.datePicker.minimumDate = minDate;
+ self.datePicker.maximumDate = maxDate;
+
+ [self.datePicker showMOFSDatePickerViewWithTag:tag firstDate:firstDate commit:^(NSDate *date) {
+ if (commitBlock) {
+ commitBlock(date);
+ }
+ } cancel:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+}
+
+// ================================pickerView===================================//
+
+- (void)showPickerViewWithDataArray:(NSArray<NSString *> *)array tag:(NSInteger)tag title:(NSString *)title cancelTitle:(NSString *)cancelTitle commitTitle:(NSString *)commitTitle commitBlock:(PickerViewCommitBlock)commitBlock cancelBlock:(PickerViewCancelBlock)cancelBlock {
+
+ self.pickView.showTag = tag;
+ self.pickView.toolBar.titleBarTitle = title;
+ self.pickView.toolBar.cancelBarTitle = cancelTitle;
+ self.pickView.toolBar.commitBarTitle = commitTitle;
+ [self.pickView showMOFSPickerViewWithDataArray:array commitBlock:^(NSString *string) {
+ if (commitBlock) {
+ commitBlock(string);
+ }
+ } cancelBlock:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+
+}
+
+- (void)showPickerViewWithCustomDataArray:(NSArray *)array keyMapper:(NSString *)keyMapper tag:(NSInteger)tag title:(NSString *)title cancelTitle:(NSString *)cancelTitle commitTitle:(NSString *)commitTitle commitBlock:(PickerViewCustomCommitBlock)commitBlock cancelBlock:(PickerViewCancelBlock)cancelBlock {
+ self.pickView.showTag = tag;
+ self.pickView.toolBar.titleBarTitle = title;
+ self.pickView.toolBar.cancelBarTitle = cancelTitle;
+ self.pickView.toolBar.commitBarTitle = commitTitle;
+ [self.pickView showMOFSPickerViewWithCustomDataArray:array keyMapper:keyMapper commitBlock:^(id model) {
+ if (commitBlock) {
+ commitBlock(model);
+ }
+ } cancelBlock:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+}
+
+//===============================addressPicker===================================//
+
+- (void)showMOFSAddressPickerWithTitle:(NSString *)title cancelTitle:(NSString *)cancelTitle commitTitle:(NSString *)commitTitle commitBlock:(void(^)(NSString *address, NSString *zipcode))commitBlock cancelBlock:(void(^)(void))cancelBlock {
+ self.addressPicker.toolBar.titleBarTitle = title;
+ self.addressPicker.toolBar.cancelBarTitle = cancelTitle;
+ self.addressPicker.toolBar.commitBarTitle = commitTitle;
+ [self.addressPicker showMOFSAddressPickerCommitBlock:^(NSString *address, NSString *zipcode) {
+ if (commitBlock) {
+ commitBlock(address, zipcode);
+ }
+ } cancelBlock:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+}
+
+- (void)showMOFSAddressPickerWithDefaultAddress:(NSString *)address title:(NSString *)title cancelTitle:(NSString *)cancelTitle commitTitle:(NSString *)commitTitle commitBlock:(void(^)(NSString *address, NSString *zipcode))commitBlock cancelBlock:(void(^)(void))cancelBlock {
+ self.addressPicker.toolBar.titleBarTitle = title;
+ self.addressPicker.toolBar.cancelBarTitle = cancelTitle;
+ self.addressPicker.toolBar.commitBarTitle = commitTitle;
+
+ [self.addressPicker showMOFSAddressPickerCommitBlock:^(NSString *address, NSString *zipcode) {
+ if (commitBlock) {
+ commitBlock(address, zipcode);
+ }
+ } cancelBlock:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+
+ if (address == nil || [address isEqualToString:@""]) {
+ return;
+ }
+
+ [self searchIndexByAddress:address block:^(NSString *address) {
+ BOOL flag = [address rangeOfString:@"error"].location == NSNotFound;
+ if (flag) {
+ NSArray *indexArr = [address componentsSeparatedByString:@"-"];
+ for (int i = 0; i < indexArr.count; i++) {
+ @try {
+ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1f * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+ [self.addressPicker selectRow:[indexArr[i] integerValue] inComponent:i animated:NO];
+ });
+ } @catch (NSException *exception) {
+
+ } @finally {
+
+ }
+
+ }
+ }
+ }];
+
+}
+
+- (void)showMOFSAddressPickerWithDefaultZipcode:(NSString *)zipcode title:(NSString *)title cancelTitle:(NSString *)cancelTitle commitTitle:(NSString *)commitTitle commitBlock:(void (^)(NSString *, NSString *))commitBlock cancelBlock:(void (^)(void))cancelBlock {
+ self.addressPicker.toolBar.titleBarTitle = title;
+ self.addressPicker.toolBar.cancelBarTitle = cancelTitle;
+ self.addressPicker.toolBar.commitBarTitle = commitTitle;
+
+ [self.addressPicker showMOFSAddressPickerCommitBlock:^(NSString *address, NSString *zipcode) {
+ if (commitBlock) {
+ commitBlock(address, zipcode);
+ }
+ } cancelBlock:^{
+ if (cancelBlock) {
+ cancelBlock();
+ }
+ }];
+
+ if (zipcode == nil || [zipcode isEqual: @""]) {
+ return;
+ }
+
+ [self searchIndexByZipCode:zipcode block:^(NSString *address) {
+ BOOL flag = [address rangeOfString:@"error"].location == NSNotFound;
+ if (flag) {
+ NSArray *indexArr = [address componentsSeparatedByString:@"-"];
+ for (int i = 0; i < indexArr.count; i++) {
+ @try {
+ dispatch_async(dispatch_get_main_queue(), ^{
+ [self.addressPicker selectRow:[indexArr[i] integerValue] inComponent:i animated:NO];
+ });
+ } @catch (NSException *exception) {
+
+ } @finally {
+
+ }
+
+ }
+ }
+ }];
+
+}
+
+- (void)searchAddressByZipcode:(NSString *)zipcode block:(void(^)(NSString *address))block {
+ [self.addressPicker searchType:SearchTypeAddress key:zipcode block:^(NSString *result) {
+ if (block) {
+ block(result);
+ }
+ }];
+}
+
+- (void)searchZipCodeByAddress:(NSString *)address block:(void(^)(NSString *zipcode))block {
+ [self.addressPicker searchType:SearchTypeZipcode key:address block:^(NSString *result) {
+ if (block) {
+ block(result);
+ }
+ }];
+}
+
+- (void)searchIndexByAddress:(NSString *)address block:(void(^)(NSString *address))block {
+ [self.addressPicker searchType:SearchTypeAddressIndex key:address block:^(NSString *result) {
+ if (block) {
+ block(result);
+ }
+ }];
+}
+
+- (void)searchIndexByZipCode:(NSString *)zipcode block:(void (^)(NSString *))block {
+ [self.addressPicker searchType:SearchTypeZipcodeIndex key:zipcode block:^(NSString *result) {
+ if (block) {
+ block(result);
+ }
+ }];
+}
+
+@end
--
Gitblit v1.8.0