Overview
The Custom Calendar View for the iOS is a great calendar component, really useful in cases that the default date picker that the iOS provides does not fit to the look and feel of your apps! It is suitable where a real calendar view is required that can be easily customized.
Here are some highlights of its most important features:
- It's fully customizable, simply by setting property values.
- Fast transition from month to month is provided, just by scrolling with your finger!
- Easy month and year selection is supported, as a picker view with pre-filled values is appeared every time that months or years subview is tapped on the calendar view.
- Both portrait and landscape orientations are supported.
- Property values can be set in three ways: Using setter methods, editing default constant values, or simply setting values on a .plist file.
- Extensive in-code commenting.
- Detailed documentation regarding the code is provided, as well as a guide on how to integrate the component in your projects.
- The integration and setup is really simple.
The Custom Calendar View component uses Automatic Reference Counting (ARC) and takes advantage of the auto-layout feature.
Works on iOS 6.0 or newer.
**Update**
Ready to integrate it in iOS 7 projects.
Integration into Projects
Integrating the Custom Calendar View in your project is as easy as it can be. Here are the steps required:
At first, you need to add the files (header .h, implementation .m and optionally the .plist for configuring settings) in your project.
Next, import the header file and adopt the Custom Calendar View protocol:
#import "CustomCalendarView.h"
@interface ViewController : UIViewController
Create a public or private Custom Calendar View object:
@property (nonatomic, strong) CustomCalendarView *customCalendar;
Initialize it and let it show on your view controller's view, or on another container view:
_customCalendar = [[CustomCalendarView alloc] initWithFrame:_viewCalendarContainer.frame];
[_customCalendar setDelegate:self];
[_customCalendar showCalendarWithCurrentDateInView:_viewCalendarContainer];
Finally, handle user tappings on calendar days using the provided delegate method:
-(void)dayWasSelectedWithInfo:(NSDictionary *)calendarInfo forCalendar:(CustomCalendarView *)customCalendar{ }
That's all. The Custom Calendar View has been integrated.
There are three methods that can be used to initialize and show the calendar on a parent view:
-(void)showCalendarWithDate:(NSDate *)dtDate inView:(UIView *)parentView;
-(void)showCalendarForMonth:(NSUInteger)month andYear:(NSUInteger)year inView:(UIView *)parentView;
-(void)showCalendarWithCurrentDateInView:(UIView *)parentView;
You can use any of them according to your desire.
Supported Properties
The Custom Calendar View component provides several properties for configuring a lot of its details.
The following short property list apply to months, years, weekdays and days subviews.
- Background, Foreground and Highlighted state color
_(*Note: The highlighted state color setting is not supported for the weedkays, as they are simply UILabels.)_
- Font names and font sizes.
- Border width and border color.
- Corner radius.
- Text shadow color and shadow offset.
Also, the current day (today) can be highlighted using different color sets.
Further than that, a lot of properties exist for setting origin points, widths, heights, gaps, years' starting and ending values, picker view's animation duration, etc.
Finally, many flags can be also set regarding the positioning of months and years, the existence or not of gaps between the subviews (weekday names, days, etc), the appearance and order of the weekday names, the way the month/year picker view should appear (animated or not), whether the current day (today) should be highlighted or not, and more.
All properties are declared as public members in the header file of the Custom Calendar View.
Calendar Setup
The calendar is set up through its properties, and there are three ways to do so.
The first one regards the use of the familiar setter methods, which can be used to set each property's value one by one. For example, to set the months' background color, you can use the following:
[_myCustomCalendar setMonthsButtonBackgroundColor:[UIColor redColor]];
Keep in mind that any property setting should be done prior to any method call that sets up and shows the calendar on your view.
The second way is easier. For every property declared in the header file, a constant value is defined in the implementation file, so as these constants to be used as the default values. You may change the constant values and make that way the calendar to be initialized according to your preferences.
Finally, the third way that is provided for setting the properties is a .plist file, which can be found along with the source files of the component. You simply set the values you desire in this file and the calendar gets initialized by reading them.
Note that the last two ways cannot be used together. There is a BOOL value inside the initWithFrame: method of the calendar component that defines where the default values will be read from. By default, this flag is set to NO, so that the constant values to be used as the default ones.
_shouldReadSettingsFromPlistFile = NO;
It's up to you to change this flag and let the .plist values to be read instead.
From all the three ways for setting the calendar up, the use of the .plist file is the easiest one.
Final Notes
Along with the Custom Calendar View source files in the downloadable file, a demo project also exists to demonstrate the use of the component.
Also, a detailed documentation accompanies it, so everything is as easy as possible for everyone to use the calendar.
Lastly, there are comments everywhere in code, in case you need to modify it.
The Custom Calendar View component has been extensively tested for bugs, however if any found, don't hesitate to report it so as to be fixed as soon as possible.
More information can be found in the downloadable product.
FAQ
1. What will I get when purchasing an App Template?
Save time and money by using professional, ready-to-use App and Game Templates. The goal here is to reduce the time and cost of making a Game App, by replacing custom development with ready to use App Templates. Customers can purchase items 24-7 from anywhere and get instant deliveries.
By purchasing a template on Chupamobile you will get:
- Full App Template Source Code
- License of use
- Lifetime free Updates of the Template
- Support by the Original Author of the App Template
- Being part of the largest professional community of App Developers and Publishers.
2. What Do The Single And Multiple Licenses Stand For?
The difference between single and multiple licenses is the number of projects you can use the template with:
-
Single License: The single license allows you to use the app template on one project, either for your own profit or on behalf of a client. You can publish on the app stores one single app based on this template;
-
Multiple License: The multiple license allows you to use the template on an unlimited number of projects, either for you or for a client. You can use it as many times as you want.
3. How can I make a Game App with this App Template?
Simply by purchasing the App/Game Template and customizing the UI and/or adding new features.
You can customize it by yourself if you have the necessary skills or you can easily choose to launch your App with our Premium Template Customization Service
The App Reskin Service is the quickest, most affordable and safest option to bring your app or game concept to life if you do not have any coding skills and/or time to do it yourself.
The Service includes the following:
-
A professional and dedicated project manager throughout the whole Reskin Service
-
Design proposals - based on your brief (including: Full theme, Icons, Screenshots, Characters, Splash Screen + other features you may have)
-
Design integration and optimization for the different device sizes.
-
Basic ASO (App Store Optimization) to help users find your app in the Stores.
-
The best performing ad network(s) fully integrated in your app for monetization purposes
-
Complete submission on the app store(s)
-
After sales support
Every app template purchased on Chupamobile Marketplace will be completely customized before launch for it to have a unique UX (user experience) for the final user.
The assigned team of app developers will integrate the best monetization tools on the market to enable your app to start monetizing in the most effective and efficient manner as soon as it is published on the app store(s).
Chupamobile manages the project for you together with a professional team of app developers and designers selected from our community of more than 100.000 specialists.The dedicated project manager will manage the app project from A-Z, as well as securing your payment on an escrow account, until completion of the project. In addition, Chupamobile offers after-sales support once your app is submitted on the app store(s) for an extra-hassle free experience!
If you need a custom quotation, Contact Us.
4. Can I Get A Refund?
We stand behind everything we sell.
One of the greatest things about purchasing an App Template on Chupamobile is our 14 Days Money Back Guarantee Policy.
A refund can be requested only:
-
Within 14 days after the original purchase date;
-
If the product purchased does not work as advertised in the product description;
-
After having detailed the issues experienced to the original author of the product by posting a comment on the product page;
-
After 48 hours of posting your comment and you haven’t received support from the original author of the product.
-
Our team will review each refund request manually, in order to protect both the Customer rights and the Intellectual Property of the Seller.