FSCalendar使用介绍(三) - 订制外观
2016-07-03 本文已影响15992人
WenchaoD
FSCalendar具有高度的可定制性:
- FSCalendarAppearance:用于全局外观属性的定制。
- FSCalendarDelegateAppearance:针对某天外观属性的定制。
外观分类
<a id='text_color'></a>文字颜色
- FSCalendarAppearance
![](https://img.haomeiwen.com/i1940172/48542e375491101a.png)
- FSCalendarDelegateAppearance
![](https://img.haomeiwen.com/i1940172/eb3fbbf74af7c75e.png)
<a id='font'></a>字体
![](https://img.haomeiwen.com/i1940172/114843e416a689f7.png)
单元格中的字体大小默认是自适应的,需要先关闭自适应。否则字体尺寸不会发生改变。
calendar.appearance.adjustsFontSizeToFitContentSize = NO; // 关闭文字尺寸自适应
<a id='common_color'></a>背景、边框、事件圆点
- FSCalendarAppearance
![](https://img.haomeiwen.com/i1940172/137d68e6bf6e3000.png)
- FSCalendarDelegateAppearance
![](https://img.haomeiwen.com/i1940172/c9139c7847ccfd85.png)
<a id='other'></a>其他属性
// 1.0=圆,0.0=正方形,0.0-1.0之间的值为圆角
@property (assign, nonatomic) CGFloat borderRadius;
**例: **
calendar.appearance.borderRadius = 0; // 设置正方形单元格
或实现
FSCalendarDelegateAppearance
的-calendar:appearance:borderRadiusForDate:
方法
效果:
![](https://img.haomeiwen.com/i1940172/1d0782c1350895dd.png)
@property (assign, nonatomic) FSCalendarCaseOptions caseOptions;
// 定义
typedef NS_OPTIONS(NSUInteger, FSCalendarCaseOptions) {
// 月文字
FSCalendarCaseOptionsHeaderUsesDefaultCase = 0, // June 2016
FSCalendarCaseOptionsHeaderUsesUpperCase = 1, // JUNE 2016
// 周文字
FSCalendarCaseOptionsWeekdayUsesDefaultCase = 0 << 4, // Sun、Mon、Tue、Wed、Thu、Fri、Sat; 周日、周一、周二、周三、周四、周五、周六
FSCalendarCaseOptionsWeekdayUsesUpperCase = 1 << 4, // SUN、MON、TUE、WED、THU、FRI、SAT; 周日、周一、周二、周三、周四、周五、周六
FSCalendarCaseOptionsWeekdayUsesSingleUpperCase = 2 << 4, // S、M、T、W、T、F、S; 日、一、二、三、四、五、六
};
例:
calendar.appearance.caseOptions = FSCalendarCaseOptionsHeaderUsesUpperCase | FSCalendarCaseOptionsWeekdayUsesUpperCase;
效果:
![](https://img.haomeiwen.com/i1940172/cd47cad0da93fbad.png)
@property (strong, nonatomic) NSString *headerDateFormat;
代表显示的月份格式。
例:
calendar.appearance.headerDateFormat = @"yyyy年MM月";
效果:
![](https://img.haomeiwen.com/i1940172/0bc28371c88f80cc.png)
/**
* The alpha value of month label staying on the fringes.
*/
@property (assign, nonatomic) CGFloat headerMinimumDissolvedAlpha;
这个属性控制‘上个月’和‘下个月’标签在静止时刻的透明度。
例:
![](https://img.haomeiwen.com/i1940172/24ead6a6ca3e0842.png)
calendar.appearance.headerMinimumDissolvedAlpha = 0;
效果:
![](https://img.haomeiwen.com/i1940172/c6c008b20602f0c5.png)
项目主页: https://github.com/WenchaoD/FSCalendar
QQ支持群: 323861692