如何从plist文件中过滤numberOfRowsInSection的数量

时间:2015-01-28 09:17:37

标签: ios objective-c uitableview

我正在尝试过滤plist文件中的行数,但我不知道如何做到这一点,我需要将events.count过滤为仅10个单元格。

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return events.count;

}

1 个答案:

答案 0 :(得分:1)

您应该从服务器加载数据,加载数据后,您可以调用

[self.tableView reloadData];

您的物品数量方法应该是这样的

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    if (events.count >= 10) {
        return 10;
    }
    else {
        return events.count;
    }
}

如果您想知道应用崩溃的原因,那是因为您将表格的数据源和委托链接到视图控制器,因此它会自动调用数据源协议方法,即使你没有调用reloadData,所以如果你总是返回10,它会调用cellForRowAtIndexPath 10次,你会尝试访问事件数组,因为它仍然是空的,因为数据没有#&# 39;尚未从服务器加载。

我猜你得到的异常是索引超出范围的异常(索引0超出数组大小)

上述内容将解决您的问题。