如何从 plist 文件中过滤 numberOfRowsInSection 的数量
How to filter the number of numberOfRowsInSection from plist file
我正在尝试过滤 plist 文件中的行数,但我不知道该怎么做,我需要过滤 events.count
到只有 10 个单元格。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return events.count;
}
你应该从服务器加载数据,当数据加载时,你可以调用
[self.tableView reloadData];
你的物品数量方法应该是这样的
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if (events.count >= 10) {
return 10;
}
else {
return events.count;
}
}
如果您想知道您的应用崩溃的原因,那是因为您将 table 的数据源和委托链接到视图控制器,因此它会自动调用数据源协议方法,即使您没有不要调用 reloadData,因此如果您总是 return 10,它将调用 cellForRowAtIndexPath 10 次并且您将尝试访问 events 数组,因为它仍然是空的,因为数据尚未从服务器加载。
我猜你遇到的异常是索引超出范围异常(索引 0 超出数组大小)
以上内容可以解决你的问题
我正在尝试过滤 plist 文件中的行数,但我不知道该怎么做,我需要过滤 events.count
到只有 10 个单元格。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return events.count;
}
你应该从服务器加载数据,当数据加载时,你可以调用
[self.tableView reloadData];
你的物品数量方法应该是这样的
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
if (events.count >= 10) {
return 10;
}
else {
return events.count;
}
}
如果您想知道您的应用崩溃的原因,那是因为您将 table 的数据源和委托链接到视图控制器,因此它会自动调用数据源协议方法,即使您没有不要调用 reloadData,因此如果您总是 return 10,它将调用 cellForRowAtIndexPath 10 次并且您将尝试访问 events 数组,因为它仍然是空的,因为数据尚未从服务器加载。
我猜你遇到的异常是索引超出范围异常(索引 0 超出数组大小)
以上内容可以解决你的问题