gpt4 book ai didi

ios - 如何在非 tableView 方法中访问 tableView?

转载 作者:行者123 更新时间:2023-11-29 03:37:39 26 4
gpt4 key购买 nike

我如何访问此代码来确定在非 tableView 方法中使用哪个 tableView?

我知道如何在 tableView:numberOfRowsInSection: 方法中使用它,但如何在我创建的方法中访问它?

我应该使用UITableView而不是tableView吗?

-(void)myMethod {

if ([tableView isEqual:self.tableViewNode])
{

}
if ([tableView isEqual:self.tableViewCities])
{

}

}

我正在查看 tableView 是否为scrollViewDidEndDecelerating:,然后执行操作。

    - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {

// NSLog(@"scrollViewDidEndDecelerating");

if ([UITableView isEqual:self.tableViewNode])
{
float endScrolling = scrollView.contentOffset.y + scrollView.frame.size.height;
if (endScrolling >= scrollView.contentSize.height)
{
index ++;
[self getFeed:index];
}
}
if ([UITableView isEqual:self.tableViewCities])
{

}


}

最佳答案

UIScrollViewDelegate 方法中,您可以将 scrollView 参数与 TableView 属性进行比较。

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if (self.firstTableView == scrollView) {
// respond to firstTableView scrolling
}
else if (self.secondTableView == scrollView) {
// respond to secondTableView scrolling
}
}

如果您需要在 TableView 的委托(delegate)中实现由委托(delegate)方法调用的方法,但根据调用调用方法的 TableView 而表现不同,那么您应该使这些方法采用 TableView 参数并始终传递调用委托(delegate)方法时的 TableView 参数。在这些方法中,将 tableView 与您的属性进行比较。

- (void)myMethod:(UITableView *)tableView
{
if (self.firstTableView == tableView) {
// do something for firstTableView
}
else if (self.secondTableView == tableView) {
// etc
}
}

例如,如果您需要从 tableView:didSelectRowAtIndexPath: 调用 myMethod:,您可以执行如下操作:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self myMethod:tableView];
}

关于ios - 如何在非 tableView 方法中访问 tableView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18933386/

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