A port of the Swift library by Squimer
This port was made so that the features of the DatePickerDialog could be used in a Objective-C project without having to import the Swift runtime in your app binary (which can increase the app binary size quite a bit)
DatePickerDialog is an iOS drop-in class that displays an UIDatePicker within an UIAlertView.
DatePickerDialog works on iOS 8, 9 and 10. It depends on the following Apple frameworks, which should already be included with most Xcode templates:
- Foundation
- UIKit
You can use CocoaPods to install DatePickerDialog-ObjC
by adding it to your Podfile
:
platform :ios, '8.0'
pod 'DatePickerDialog-ObjC'
To get the full benefits import LSLDatePickerDialog
wherever you import UIKit
#import <UIKit/UIKit.h>
#import "LSLDatePickerDialog.h"
- Download and drop
LSLDatePickerDialog.h
andLSLDatePickerDialog.m
in your project. - Congratulations!
#import "LSLDatePickerDialog.h"
@implementation ViewController {
-(void)openDatePicker {
LSLDatePickerDialog *dpDialog = [[LSLDatePickerDialog alloc] init];
[dpDialog showWithTitle:@"DatePicker" doneButtonTitle:@"Done" cancelButtonTitle:@"Cancel"
defaultDate:[NSDate date] minimumDate:nil maximumDate:nil datePickerMode:UIDatePickerModeDate
callback:^(NSDate * _Nullable date){
if(date)
{
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterMediumStyle];
NSLog(@"Date selected: %@",[formatter stringFromDate:date]);
}
}
];
}
- showCancelButton: Bool - default true
- locale: Locale - default nil
Example initialization without 'Cancel' button:
LSLDatePickerDialog *dpDialog = [[LSLDatePickerDialog alloc] initWithCancelButton:NO];
Example initialization with locale:
LSLDatePickerDialog *dpDialog = [[LSLDatePickerDialog alloc] initWithLocale:[Locale localeWithLocaleIdentifier:@“ja_JP”]];
- title: String (Required)
- doneButtonTitle: String
- cancelButtonTitle: String
- defaultDate: Date
- minimumDate: Date
- maximumDate: Date
- datePickerMode: UIDatePickerMode (Required)
- callback: ((date: Date) -> Void) (Required)
- @squimer for creating the Swift version of this library, where this library was ported from.
- @wimagguc for the work with ios-custom-alertview library.
This code is distributed under the terms and conditions of the MIT license.