口袋优选

SGPageContentView.h 2.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. //
  2. // 如遇到问题或有更好方案,请通过以下方式进行联系
  3. // QQ群:429899752
  4. // Email:kingsic@126.com
  5. // GitHub:https://github.com/kingsic/SGPagingView
  6. //
  7. // SGPageContentView.h
  8. // SGPagingViewExample
  9. //
  10. // Created by kingsic on 16/10/6.
  11. // Copyright © 2016年 kingsic. All rights reserved.
  12. //
  13. #import <UIKit/UIKit.h>
  14. @class SGPageContentView;
  15. @protocol SGPageContentViewDelegate <NSObject>
  16. @optional
  17. /**
  18. * 联动 SGPageTitleView 的方法
  19. *
  20. * @param pageContentView SGPageContentView
  21. * @param progress SGPageContentView 内部视图滚动时的偏移量
  22. * @param originalIndex 原始视图所在下标
  23. * @param targetIndex 目标视图所在下标
  24. */
  25. - (void)pageContentView:(SGPageContentView *)pageContentView progress:(CGFloat)progress originalIndex:(NSInteger)originalIndex targetIndex:(NSInteger)targetIndex;
  26. /**
  27. * 给 SGPageContentView 所在控制器提供的方法(根据偏移量来处理返回手势的问题)
  28. *
  29. * @param pageContentView SGPageContentView
  30. * @param offsetX SGPageContentView 内部视图的偏移量
  31. */
  32. - (void)pageContentView:(SGPageContentView *)pageContentView offsetX:(CGFloat)offsetX;
  33. @end
  34. @interface SGPageContentView : UIView
  35. /**
  36. * 对象方法创建 SGPageContentView
  37. *
  38. * @param frame frame
  39. * @param parentVC 当前控制器
  40. * @param childVCs 子控制器个数
  41. */
  42. - (instancetype)initWithFrame:(CGRect)frame parentVC:(UIViewController *)parentVC childVCs:(NSArray *)childVCs;
  43. /**
  44. * 类方法创建 SGPageContentView
  45. *
  46. * @param frame frame
  47. * @param parentVC 当前控制器
  48. * @param childVCs 子控制器个数
  49. */
  50. + (instancetype)pageContentViewWithFrame:(CGRect)frame parentVC:(UIViewController *)parentVC childVCs:(NSArray *)childVCs;
  51. /** SGPageContentViewDelegate */
  52. @property (nonatomic, weak) id<SGPageContentViewDelegate> delegatePageContentView;
  53. /** 是否需要滚动 SGPageContentView 默认为 YES;设为 NO 时,不必设置 SGPageContentView 的代理及代理方法 */
  54. @property (nonatomic, assign) BOOL isScrollEnabled;
  55. /** 给外界提供的方法,获取 SGPageTitleView 选中按钮的下标 */
  56. - (void)setPageCententViewCurrentIndex:(NSInteger)currentIndex;
  57. @end