obj c UITableView numberOfRowsInSection выполняется 5 раз. Почему? - PullRequest
0 голосов
/ 11 марта 2020

В проекте 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 运行
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...