YMPickerPopupView.h 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. //
  2. // YMPickerPopupView.h
  3. // MSYOUPAI
  4. //
  5. // Created by YoMi on 2024/2/11.
  6. // Copyright © 2024 MS. All rights reserved.
  7. //
  8. #import "YMBaseView.h"
  9. #import "MSYOUPAIViewModel.h"
  10. NS_ASSUME_NONNULL_BEGIN
  11. @class YMPickerComponentViewModel,YMPickerRowViewModel;
  12. typedef void(^PickerButtonBlock)(BOOL isConfirm, NSArray <NSDictionary*>*currentSelectedDataArray);
  13. @interface YMPickerPopupView : YMBaseView
  14. @property (nonatomic, copy) PickerButtonBlock buttonBlock;
  15. /** 标题文本*/
  16. @property (nonatomic, copy) NSString *titleText;
  17. /** 标题颜色*/
  18. @property (nonatomic, strong) UIColor *titleColor;
  19. /** 标题字体样式大小*/
  20. @property (nonatomic, strong) UIFont *titleFont;
  21. /** 取消背景色*/
  22. @property (nonatomic, strong) UIColor *cancelBgColor;
  23. /** 确认背景色*/
  24. @property (nonatomic, strong) UIColor *confirmBgColor;
  25. /** 取消标题颜色*/
  26. @property (nonatomic, strong) UIColor *cancelTitleColor;
  27. /** 确认标题颜色*/
  28. @property (nonatomic, strong) UIColor *confirmTitleColor;
  29. /** 取消字体样式大小*/
  30. @property (nonatomic, strong) UIFont *cancelFont;
  31. /** 确认字体样式大小*/
  32. @property (nonatomic, strong) UIFont *confirmFont;
  33. /** 取消标题*/
  34. @property (nonatomic, copy) NSString *cancelTitle;
  35. /** 确认标题*/
  36. @property (nonatomic, copy) NSString *confirmTitle;
  37. /** 取消圆角大小*/
  38. @property (nonatomic, assign) CGFloat cancelRadius;
  39. /** 确认圆角大小*/
  40. @property (nonatomic, assign) CGFloat confirmRadius;
  41. /** 取消边框色*/
  42. @property (nonatomic, assign) UIColor *cancelBorderColor;
  43. /** 确认边框色*/
  44. @property (nonatomic, assign) UIColor *confirmBorderColor;
  45. /** 取消边框宽度大小*/
  46. @property (nonatomic, assign) CGFloat cancelBorderWidth;
  47. /** 确认边框宽度大小*/
  48. @property (nonatomic, assign) CGFloat confirmBorderWidth;
  49. @end
  50. @interface YMPickerViewModel : MSYOUPAIViewModel
  51. /** 分组列表 */
  52. @property (nonatomic, strong, readonly) NSArray <YMPickerComponentViewModel*>*componentDataSource;
  53. @end
  54. @interface YMPickerComponentViewModel : MSYOUPAIViewModel
  55. /** 当前选中分组下标 */
  56. @property (nonatomic, assign) NSInteger currentSelectedSectionIndex;
  57. /** 当前选中行下标 */
  58. @property (nonatomic, assign) NSInteger currentSelectedRowIndex;
  59. /** 当前选中值 */
  60. @property (nonatomic, copy) NSString *currentSelectedValue;
  61. /** 分组Id */
  62. @property (nonatomic, copy, readonly) NSString *componentId;
  63. /** 分组名 */
  64. @property (nonatomic, copy, readonly) NSString *componentName;
  65. /** 分组宽度 */
  66. @property (nonatomic, assign, readonly) CGFloat componentWidth;
  67. /** 行列表 */
  68. @property (nonatomic, strong, readonly) NSArray <YMPickerRowViewModel*>*rowDataSource;
  69. @end
  70. @interface YMPickerRowViewModel : MSYOUPAIViewModel
  71. /** 分组Id */
  72. @property (nonatomic, copy, readonly) NSString *componentId;
  73. /** 行Id */
  74. @property (nonatomic, copy, readonly) NSString *rowId;
  75. /** 标题名 */
  76. @property (nonatomic, copy, readonly) NSString *rowName;
  77. @end
  78. NS_ASSUME_NONNULL_END