YOUPAILZBigCastSetSelectedPricePickerVC.m 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. //
  2. // YOUPAILZBigCastSetSelectedPricePickerVC.m
  3. // MSYOUPAI
  4. //
  5. // Created by CY on 2022/3/9.
  6. // Copyright © 2022 MS. All rights reserved.
  7. //
  8. #import "YOUPAILZBigCastSetSelectedPricePickerVC.h"
  9. @interface YOUPAILZBigCastSetSelectedPricePickerVC ()
  10. @end
  11. @implementation YOUPAILZBigCastSetSelectedPricePickerVC
  12. -(UIView *)customView{
  13. if(_customView == nil){
  14. _customView = [UIView new];
  15. _customView.backgroundColor = UIColor.whiteColor;
  16. }
  17. return _customView;
  18. }
  19. -(YOUPAIPickerViewHeader *)youpaipHeader{
  20. if(_youpaipHeader == nil){
  21. _youpaipHeader = [YOUPAIPickerViewHeader new];
  22. _youpaipHeader.backgroundColor = UIColor.whiteColor;
  23. [_youpaipHeader.youpaipCommitBtn addTarget:self action:@selector(confirmBtnClick) forControlEvents:UIControlEventTouchUpInside];
  24. [_youpaipHeader.youpaipCancleBtn addTarget:self action:@selector(cancelBtnClick) forControlEvents:UIControlEventTouchUpInside];
  25. }
  26. return _youpaipHeader;
  27. }
  28. -(PGPickerView *)pickerView{
  29. if( _pickerView == nil){
  30. _pickerView = [PGPickerView new];
  31. _pickerView.type = PGPickerViewLineTypeline;
  32. _pickerView.lineBackgroundColor = [UIColor clearColor];
  33. _pickerView.lineHeight = 0.0f;
  34. _pickerView.verticalLineBackgroundColor = [UIColor clearColor];
  35. _pickerView.verticalLineWidth = 0.0f;
  36. _pickerView.backgroundColor = [UIColor whiteColor];
  37. _pickerView.isHiddenMiddleText = YES;
  38. // _pickerView.rowHeight = 35;
  39. _pickerView.middleTextColor = [[UIColor whiteColor] colorWithAlphaComponent:0.2f];
  40. _pickerView.textColorOfSelectedRow = LZ273145Color;
  41. _pickerView.textColorOfOtherRow = LZD3D1D7Color;
  42. _pickerView.textFontOfSelectedRow = LCFont(17);
  43. _pickerView.textFontOfOtherRow = LCFont(17);
  44. _pickerView.lineBackgroundColor = [UIColor clearColor];
  45. _pickerView.delegate = self;
  46. _pickerView.dataSource = self;
  47. }
  48. return _pickerView;
  49. }
  50. - (void)viewDidLoad {
  51. [super viewDidLoad];
  52. [self.baseView setHidden:true];
  53. self.isTouchDismiss = true;
  54. [self youpaifMakeUI];
  55. [self youpaifMakeLayout];
  56. self.selectIndex = 0;
  57. }
  58. -(void)setSelectIndex:(NSInteger)selectIndex{
  59. if (_selectIndex == selectIndex){
  60. return;
  61. }
  62. _selectIndex = selectIndex;
  63. [self.pickerView selectRow:_selectIndex inComponent:0 animated:nil];
  64. }
  65. - (void)youpaifMakeUI{
  66. [self.view addSubview:self.customView];
  67. [self.customView addSubview:self.youpaipHeader];
  68. [self.customView addSubview:self.pickerView];
  69. }
  70. -(void)youpaifMakeLayout{
  71. [_pickerView mas_makeConstraints:^(MASConstraintMaker *make) {
  72. make.bottom.mas_equalTo(-(SafeHeight+8));
  73. make.left.mas_equalTo(8);
  74. make.right.mas_equalTo(-8);
  75. make.height.mas_equalTo(180);
  76. }];
  77. [_youpaipHeader mas_makeConstraints:^(MASConstraintMaker *make) {
  78. make.top.mas_equalTo(0);
  79. make.left.right.mas_equalTo(0);
  80. make.height.mas_equalTo(49);
  81. }];
  82. [_customView mas_makeConstraints:^(MASConstraintMaker *make) {
  83. make.bottom.mas_equalTo(0);
  84. make.left.right.mas_equalTo(0);
  85. make.height.mas_equalTo(209+SafeHeight+49);
  86. }];
  87. [self.view layoutIfNeeded];
  88. [LCTools clipCorner:UIRectCornerTopLeft|UIRectCornerTopRight View:_customView size:CGSizeMake(16, 16)];
  89. }
  90. - (void)cancelBtnClick{
  91. [self dismissViewControllerAnimated:true completion:nil];
  92. }
  93. - (void)confirmBtnClick{
  94. // if (self.delegate && [self.delegate respondsToSelector:@selector(didSelectHeight:height:)]) {
  95. //
  96. // [self.delegate didSelectHeight:self height:[self.dataSouce objectAtIndex:_selectIndex]];
  97. // }
  98. if (self.confirmBtnClickBlock != nil) {
  99. self.confirmBtnClickBlock([self.dataSouce objectAtIndex:_selectIndex]);
  100. }
  101. [self dismissViewControllerAnimated:true completion:nil];
  102. }
  103. - (NSInteger)numberOfComponentsInPickerView:(PGPickerView *)pickerView{
  104. return 1;
  105. }
  106. - (NSInteger)pickerView:(PGPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{
  107. return self.dataSouce.count;
  108. }
  109. - (NSString *)pickerView:(PGPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
  110. YOUPAILZBigCastSetPriceModel *model = self.dataSouce[row];
  111. return [NSString stringWithFormat:@"%@%@",model.youpaipcoins,model.youpaipcontent];
  112. }
  113. - (void)pickerView:(PGPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{
  114. NSInteger select = MIN(row,_dataSouce.count-1);
  115. self.selectIndex = select;
  116. }
  117. @end