如何在UITableView中找到Cell的数量

suj*_*406 20 uitableview

我需要遍历TableView中的所有单元格,并cell.imageView在按下按钮时设置图像.我正试着把每个细胞都拿走

[[self tableView] cellForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:0]];
Run Code Online (Sandbox Code Playgroud)

但我需要细胞计数.

如何在TableView中查找单元格数?

Bir*_*chi 41

int sections = [tableView numberOfSections]; 

int rows = 0; 

for(int i=0; i < sections; i++)
{
    rows += [tableView numberOfRowsInSection:i];
}
Run Code Online (Sandbox Code Playgroud)

总行数=行数;


Jas*_*ams 16

所有单元格(在一个部分中)的总数应该是返回的内容

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
Run Code Online (Sandbox Code Playgroud)

但是这个方法正在计算中,你也可以用你自己的方法来实现.可能是类似的东西return [myArrayofItems count];


And*_*scu 6

UITableView仅用于查看从数据源获取的数据的方式.单元格总数是属于数据源的信息,您应该从那里访问它. UITableView拥有足够的单元格以适合您可以使用的屏幕

- (NSArray *)visibleCells

一个肮脏的解决方案是维护每个UITableViewCell创建的单独数组.它有效,如果你的细胞数量很少,那就不那么糟了.

然而,这不是一个非常优雅的解决方案,我个人不会选择这个,除非绝对没有别的办法.如果没有相应的数据源更改,最好不要修改表中的实际单元格.