Nessuna descrizione

SGPageTitleViewConfigure.h 4.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. //
  2. // SGPageTitleViewConfigure.h
  3. // SGPagingViewExample
  4. //
  5. // Created by kingsic on 2017/10/16.
  6. // Copyright © 2017年 kingsic. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. typedef enum : NSUInteger {
  10. /// 下划线样式
  11. SGIndicatorStyleDefault,
  12. /// 遮盖样式
  13. SGIndicatorStyleCover,
  14. /// 固定样式
  15. SGIndicatorStyleFixed,
  16. /// 动态样式(仅在 SGIndicatorScrollStyleDefault 样式下支持)
  17. SGIndicatorStyleDynamic
  18. } SGIndicatorStyle;
  19. typedef enum : NSUInteger {
  20. /// 指示器位置跟随内容滚动而改变
  21. SGIndicatorScrollStyleDefault,
  22. /// 内容滚动一半时指示器位置改变
  23. SGIndicatorScrollStyleHalf,
  24. /// 内容滚动结束时指示器位置改变
  25. SGIndicatorScrollStyleEnd
  26. } SGIndicatorScrollStyle;
  27. @interface SGPageTitleViewConfigure : NSObject
  28. /** 类方法创建 */
  29. + (instancetype)pageTitleViewConfigure;
  30. #pragma mark - - SGPageTitleView 属性
  31. /** SGPageTitleView 是否需要弹性效果,默认为 YES */
  32. @property (nonatomic, assign) BOOL needBounces;
  33. /** 是否显示底部分割线,默认为 YES */
  34. @property (nonatomic, assign) BOOL showBottomSeparator;
  35. /* SGPageTitleView 底部分割线颜色,默认为 lightGrayColor */
  36. @property (nonatomic, strong) UIColor *bottomSeparatorColor;
  37. #pragma mark - - 标题属性
  38. /** 标题文字字号大小,默认 15 号字体 */
  39. @property (nonatomic, strong) UIFont *titleFont;
  40. /** 标题文字选中字号大小,默认 15 号字体。
  41. * 一旦设置此属性,titleTextZoom 属性将不起作用 */
  42. @property (nonatomic, strong) UIFont *titleSelectedFont;
  43. /** 普通状态下标题文字的颜色,默认为黑色 */
  44. @property (nonatomic, strong) UIColor *titleColor;
  45. /** 选中状态下标题文字的颜色,默认为红色 */
  46. @property (nonatomic, strong) UIColor *titleSelectedColor;
  47. /** 是否让标题文字具有渐变效果,默认为 NO */
  48. @property (nonatomic, assign) BOOL titleGradientEffect;
  49. /** 是否让标题文字具有缩放效果,默认为 NO */
  50. @property (nonatomic, assign) BOOL titleTextZoom;
  51. /** 标题文字缩放比,默认为 0.1f,取值范围 0.0 ~ 1.0f */
  52. @property (nonatomic, assign) CGFloat titleTextZoomRatio;
  53. /** 标题额外增加的宽度,默认为 20.0f */
  54. @property (nonatomic, assign) CGFloat titleAdditionalWidth;
  55. #pragma mark - - 指示器属性
  56. /** 是否显示指示器,默认为 YES */
  57. @property (nonatomic, assign) BOOL showIndicator;
  58. /** 指示器颜色,默认为红色 */
  59. @property (nonatomic, strong) UIColor *indicatorColor;
  60. /** 指示器高度,默认为 2.0f */
  61. @property (nonatomic, assign) CGFloat indicatorHeight;
  62. /** 指示器动画时间,默认为 0.1f,取值范围 0 ~ 0.3f */
  63. @property (nonatomic, assign) CGFloat indicatorAnimationTime;
  64. /** 指示器样式,默认为 SGIndicatorStyleDefault */
  65. @property (nonatomic, assign) SGIndicatorStyle indicatorStyle;
  66. /** 指示器圆角大小,默认为 0f */
  67. @property (nonatomic, assign) CGFloat indicatorCornerRadius;
  68. /** 指示器遮盖样式外的其他样式下指示器与底部之间的距离,默认为 0f */
  69. @property (nonatomic, assign) CGFloat indicatorToBottomDistance;
  70. /** 指示器遮盖样式下的边框宽度,默认为 0.0f */
  71. @property (nonatomic, assign) CGFloat indicatorBorderWidth;
  72. /** 指示器遮盖样式下的边框颜色,默认为 clearColor */
  73. @property (nonatomic, strong) UIColor *indicatorBorderColor;
  74. /** 指示器遮盖、下划线样式下额外增加的宽度,默认为 0.0f;介于标题文字宽度与按钮宽度之间 */
  75. @property (nonatomic, assign) CGFloat indicatorAdditionalWidth;
  76. /** 指示器固定样式下宽度,默认为 20.0f;最大宽度并没有做限制,请根据实际情况妥善设置 */
  77. @property (nonatomic, assign) CGFloat indicatorFixedWidth;
  78. /** 指示器动态样式下宽度,默认为 20.0f;最大宽度并没有做限制,请根据实际情况妥善设置 */
  79. @property (nonatomic, assign) CGFloat indicatorDynamicWidth;
  80. /** 指示器滚动位置改变样式,默认为 SGIndicatorScrollStyleDefault */
  81. @property (nonatomic, assign) SGIndicatorScrollStyle indicatorScrollStyle;
  82. #pragma mark - - 标题间分割线属性
  83. /** 是否显示标题间分割线,默认为 NO */
  84. @property (nonatomic, assign) BOOL showVerticalSeparator;
  85. /** 标题间分割线颜色,默认为红色 */
  86. @property (nonatomic, strong) UIColor *verticalSeparatorColor;
  87. /** 标题间分割线额外减少的高度,默认为 0.0f */
  88. @property (nonatomic, assign) CGFloat verticalSeparatorReduceHeight;
  89. #pragma mark - - badge 相关属性
  90. /** badge 颜色,默认红色 */
  91. @property (nonatomic, strong) UIColor *badgeColor;
  92. /** badge 尺寸大小,默认为 7.0f */
  93. @property (nonatomic, assign) CGFloat badgeSize;
  94. /** badge 偏移量,默认(0,0)*/
  95. @property (nonatomic, assign) CGPoint badgeOff;
  96. @end