STTableBaseView.m 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. //
  2. // STTableBaseView.m
  3. // BuguLive
  4. //
  5. // Created by 岳克奎 on 17/4/17.
  6. // Copyright © 2017年 xfg. All rights reserved.
  7. //
  8. #import "STTableBaseView.h"
  9. @implementation STTableBaseView
  10. -(NSMutableArray *)dataSoureMArray{
  11. if (!_dataSoureMArray) {
  12. _dataSoureMArray = @[].mutableCopy;
  13. }
  14. return _dataSoureMArray;
  15. }
  16. #pragma *************************** Getter ***************************
  17. #pragma mark --- tableView
  18. -(UITableView *)tableView
  19. {
  20. if (!_tableView) {
  21. _tableView = [[UITableView alloc]initWithFrame:CGRectMake(0,0,kScreenW,kScreenH)
  22. style:UITableViewStylePlain];
  23. _tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
  24. _tableView.delegate = self;
  25. _tableView.dataSource = self;
  26. [self addSubview:_tableView];
  27. //解决滑不到底部问题
  28. _tableView.contentInset = UIEdgeInsetsMake(0, 0, 64, 0);
  29. _tableView.showsVerticalScrollIndicator = NO;
  30. [BGMJRefreshManager refresh:self.tableView target:self headerRereshAction:@selector(headerReresh) shouldHeaderBeginRefresh:NO footerRereshAction:nil];
  31. // [self showSTRefreshTableView:_tableView
  32. // andSTRefreshType:STRefreshTypeDefault
  33. // andSTRefreshHeaderType:STRefreshHeaderTypeGif
  34. // andSTRefreshTimeLabHidden:YES
  35. // andSTRefreshStateLabHidden:YES];
  36. }
  37. return _tableView;
  38. }
  39. #pragma *************************** Delegate ***************************
  40. #pragma ----------------Delegate of <UITableViewDelegate>
  41. #pragma ---- row
  42. -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
  43. return _dataSoureMArray.count;
  44. }
  45. #pragma ---- cell
  46. -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
  47. return nil;
  48. }
  49. #pragma ----------------Delegate of <UITableViewDataSource>
  50. #pragma ---- rowHeight
  51. -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
  52. return 60;
  53. }
  54. #pragma ----section
  55. -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
  56. return 1;
  57. }
  58. #pragma ----sectionHeaderView-Hight
  59. -(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
  60. return 0;
  61. }
  62. #pragma ---sectionHeaderView-Color
  63. -(void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section{
  64. view.tintColor = [UIColor clearColor];
  65. }
  66. #pragma ---did Select
  67. -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
  68. if (_baseDelegate &&[_baseDelegate respondsToSelector:@selector(showTableViewDidSelectIndexpath:andSTTableBaseView:)]) {
  69. [_baseDelegate showTableViewDidSelectIndexpath:indexPath
  70. andSTTableBaseView:self];
  71. }
  72. }
  73. - (void)headerReresh
  74. {
  75. [self.tableView reloadData];
  76. dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
  77. [BGMJRefreshManager endRefresh:self.tableView];
  78. });
  79. }
  80. //#pragma mark ------- show Request API
  81. //-(void)showAPIDataAndComplete:(void(^)(BOOL finished))block{
  82. //
  83. // [self.tableView reloadData];
  84. // // subview rewite
  85. // if ([_tableView.mj_header isRefreshing]) {
  86. // [_tableView.mj_header endRefreshing];
  87. // }
  88. // if ([_tableView.mj_footer isRefreshing]) {
  89. // [_tableView.mj_footer endRefreshing];
  90. // }
  91. //}
  92. //#pragma mark *******************Plublic Funcation 公有功能预设 ************************
  93. //#pragma mark ------- STRefresh
  94. //-(void)showSTRefreshTableView:(UITableView *)tableView
  95. // andSTRefreshType:(STRefreshType)stRefreshType
  96. // andSTRefreshHeaderType:(STRefreshHeaderType )stRefreshHeaderType
  97. // andSTRefreshTimeLabHidden:(BOOL)timeLabHidden
  98. // andSTRefreshStateLabHidden:(BOOL)stateLabHidden {
  99. // __weak typeof(self)weak_Self = self;
  100. // _stRefresh = [[STRefresh alloc]init];
  101. // [_stRefresh showSTRefreshTableView:tableView
  102. // andSTRefreshType:stRefreshType
  103. // andSTRefreshHeaderType:stRefreshHeaderType
  104. // andSTRefreshTimeLabHidden:timeLabHidden
  105. // andSTRefreshStateLabHidden:stateLabHidden
  106. // andDropDownBlock:^{
  107. // weak_Self.hasNextPage = 1;
  108. // [self showAPIDataAndComplete:^(BOOL finished) {
  109. // [tableView.mj_header endRefreshing];
  110. // [tableView.mj_footer endRefreshing];
  111. // }];
  112. // }
  113. // andDropUpBlock:^{
  114. // if (_hasNextPage == YES) {
  115. // _recordCurrentPage++;
  116. // [self showAPIDataAndComplete:^(BOOL finished) {
  117. // if (finished) {
  118. //
  119. // }else{
  120. // _recordCurrentPage--;
  121. // }
  122. // [tableView.mj_header endRefreshing];
  123. // [tableView.mj_footer endRefreshing];
  124. // }];
  125. // }
  126. // }];
  127. //}
  128. @end