gpt4 book ai didi

iphone - 未调用 UITableView 委托(delegate)和数据源方法

转载 作者:技术小花猫 更新时间:2023-10-29 10:41:23 25 4
gpt4 key购买 nike

我有一个包含 UITableView 的 UIView。 tableview 的委托(delegate)设置为我的 UIView,但它从不调用委托(delegate)方法:

-(id)init {
self = [super init];
if (self) {
self.tableView = [[UITableView alloc] initWithFrame:self.bounds];
self.tableView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
self.tableView.dataSource = self;
self.tableView.delegate = self;
self.tableView.scrollEnabled = NO;
self.tableView.layer.cornerRadius = PanelCornerRadius;
[self addSubview:self.tableView];
}
return self;
}

#pragma mark - UITableViewDelegate methods

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

NSLog(@"height for row");
int height = [self heightForRowAtIndexPath:indexPath];

return height;
}

#pragma mark - UITableViewDataSource methods

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

NSLog(@"number of rows");
if (self.manager.fetchOperation.dataFetchProblem) {
return 1;
}

int numberOfRows = [self.delegate numberOfSectionsInPanel:self];

return numberOfRows;
}

我已经探索了所有我能想到的选项,但似乎无法找到问题的根源。

编辑:包括 numberOfRowsInSection。它可能会返回 0,只是它永远不会有机会,因为“行数”NSLog 永远不会被调用。

最佳答案

能否请您写下您在 cellForRowAtIndexPath: 方法中编写的代码?因为我找不到你的代码有什么问题。

您是从其他 ViewController 调用您的 UIView 吗?如果是,如何?

我曾经做过这样的事情。我在 UIView 中这样声明了一个方法:

- (void)setUpTableView{
self.tableview.delegate=self;
self.tableview.dataSource=self;
}

然后我从添加了这个 View 的 View Controller 调用了 setUpTableView,如下所示:

[self.yourView setUpTableView]; 

这可能会有所帮助。谢谢。

关于iphone - 未调用 UITableView 委托(delegate)和数据源方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18970013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com