В проекте Obj C я использую компонент "UITableView", но когда я устанавливаю метод делегата "numberOfRowsInSection", я думаю, что он будет выполняться только один раз, но на самом деле он запускается пять раз. когда я тестирую другой проект, есть еще pullzz, он запускается 3 раза. Мне любопытно, не могли бы вы мне помочь? Спасибо большое.
#import "PlansViewController.h"
@interface PlansViewController ()
@property(nonatomic) ModelPlansRes* array;
@end
@implementation PlansViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
DRAW_BG_COMMON(@"plansbg")
UITableView* mainTableView = [UITableView new];
[mainTableView setSeparatorStyle:UITableViewCellSeparatorStyleNone];
mainTableView.delegate = self;
mainTableView.dataSource = self;
[self.view addSubview:mainTableView];
[mainTableView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(@60);
make.left.equalTo(@30);
make.right.equalTo(@-30);
make.bottom.equalTo(@-60);
}];
}
/*
#pragma mark - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
}
*/
- (nonnull UITableViewCell *)tableView:(nonnull UITableView *)tableView cellForRowAtIndexPath:(nonnull NSIndexPath *)indexPath {
UITableViewCell* cell = [UITableViewCell new];
cell.backgroundColor = UIColor.blackColor;
return cell;
}
- (NSInteger)tableView:(nonnull UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
NSLog(@"numberOfRowsInSection 运行");
return self.array.count;
}
- (ModelPlansRes *)array{
if(!_array){
_array = [ModelPlans SelectAll];
}
return _array;
}
@end
результат выполнения
2020-03-11 18:18:39.731226+0800 ccword[81891:1265702] numberOfRowsInSection 运行
2020-03-11 18:18:39.734037+0800 ccword[81891:1265702] numberOfRowsInSection 运行
2020-03-11 18:18:39.734264+0800 ccword[81891:1265702] numberOfRowsInSection 运行
2020-03-11 18:18:39.734448+0800 ccword[81891:1265702] numberOfRowsInSection 运行
2020-03-11 18:18:39.734897+0800 ccword[81891:1265702] numberOfRowsInSection 运行