滚动时出现两个tableviews错误

时间:2017-08-30 07:12:07

标签: ios objective-c uitableview

我在滚动视图上相邻使用两个tableview ..

scrollview - 屏幕宽度* 2,只能水平滚动。 它上面有两个表格视图,只有任何一个tableview出现在滚动屏幕上。

对于每个tableview我从服务器获取数据,我将其保存在本地。

这里的问题是如果滚动后我想要显示的tableview的行数,程序会因为前一个索引值而崩溃。

假设iam在第一个tableview数组中有10个项目,在第二个tableview数组中有20个项目。 如果我移动到第二个tableview并滚动到20索引,如果我在滚动时滚动回第一个表视图,它正在搜索索引路径20.所以我收到错误。

如果我在tableview不滚动时滚动回第一个tableview,即使第二个tableview的当前索引路径是20,我也没有收到任何错误。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
{
    if (selecetedSearchIndex == 0){
        UITableViewCell *cell ;
       // code for cell

        return cell;
    }
    else{
        UITableViewCell *cell ;
       // code for cell

        return cell;
    }
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
{
    if (selecetedSearchIndex == 0)
    {
       return firstArr.count;
    }
    else{
        return secondArr.count;
    }
}

// selecetedSearchIndex是用于标识屏幕上显示的tableview的索引值

任何人都可以帮助我......

2 个答案:

答案 0 :(得分:0)

你的问题不完整但是这类问题的最常见解决方案是在滚动其他tableview之前先停止滚动一个tableview

[tableView setContentOffset:tableView.contentOffset animated:NO];

如果这不起作用,请分享您的崩溃日志

答案 1 :(得分:-1)

它无法计算同时提供的高度。简单的解决方案是制作其高度的约束出口并以编程方式设置其常量。

//////////// @property(非原子,弱)NSLayoutConstraint * heightConstraint;

/////////// heightConstraint.constant = 100;