tableView: cellForRowAtIndexPath: 不仅为可见单元格调用?

2024-01-24

我有一个带有部分的 tableView,可以打开和关闭。因此,当我点击一个部分将其打开时,它会被单元格填满并且-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)被呼叫的次数与我提供的次数完全相同-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section.

那是对的吗?它不应该只是可见细胞的数量吗?

因为就我而言,我的情况很糟糕:我有很多自定义单元格(50~100 个单元格)并调用-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)对于每个单元格都会减慢部分的打开速度,因为每次执行从笔尖读取并且单元格内容都被图像填充。 我检查了单元格内部的可见性-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)像这样:

if ([[self.tableView indexPathsForVisibleRows] containsObject:indexPath])
    NSLog(@"visible %@", indexPath);

它显示在 45 个细胞中,只有 6 或 7 个是可见的。其他的则在可见区域之外。但创建细胞仍然进行。 这是代码:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath    {
static NSString *CellIdentifier = @"IVCell";
IVCamera *camera = [server.cameras objectAtIndex:indexPath.row];

IVServerListViewCell *cell = (IVServerListViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    [[NSBundle mainBundle] loadNibNamed:@"IVServerListCell" owner:self options:nil];
    cell = (IVServerListViewCell*)_tableViewCell;
    self.tableViewCell = nil;

}

[cell textLabel].text = camera.cameraName;
cell.preview = camera.preview;
cell.userData = camera; 
cell.isEnabled = (server.isInactive)?NO:camera.isOnline;

return cell;
}

仍然正确吗?或者我错过了什么?


增加你的

UITableview 的估计行高度。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

tableView: cellForRowAtIndexPath: 不仅为可见单元格调用? 的相关文章

  • 推送动画,没有阴影和停电

    我有一个简单的iOS NavigationController基于应用程序 二UICollectionViews 相继 如果元素打开 第一个合集 被点击时 第二集 将被打开 非常简单 重要的提示 Both UICollectionViews
  • Apple Watch 预构建操作可更改故事板 customModule 引用

    我目前有一个项目 其中包含同一应用程序的 3 个不同版本 不同的品牌等 该项目运行得很好 从那时起 我添加了 3 个新的 Apple Watch 目标 每个应用程序 版本 1 个 其中 2 个引用 主 Apple Watch 目标中的文件
  • ios水平居中约束问题?

    I am having hard time in learning constraints auto layout in iOS I have used any width any height I have a storyboard sc
  • 哪些 Flutter 插件或功能可以利用外部 iOS/Android 显示器来显示与主显示器不同的内容

    我正在构建一个跨平台应用程序 需要在外部显示器上显示不同的视图 通常通过连接到 LCD 投影仪的 HDMI 适配器电缆连接 Flutter 是否能够在内置的外部显示器上显示不同的屏幕 在现有的 Flutter 插件中还是使用现有的 Flut
  • 根据 iOS 版本使用不同的类实现?

    iOS 11 最近添加了一个我想使用的新功能 但我仍然需要支持旧版本的 iOS 有没有一种方法可以将同一个类编写两次 并让较新版本的 iOS 使用该类的一个版本 而旧版本的 iOS 使用另一个版本 注 最初我用的是if available
  • UIImageJPEGRepresentation 在视网膜显示屏上提供 2x 图像

    我有这段代码 它创建一个图像 然后向其添加一些效果并缩小其大小以使其largeThumbnail UIImage originalImage UIImage imageWithData self originalImage thumbnai
  • 如何使用 CNContacts 快速获取手机号码?

    我有一些代码可以检索用户联系人中的所有电话号码 但只想过滤掉手机号码 目前 我只是通过将第一个数字为 或第二个数字为 7 的数字添加到数组中来实现此目的 如下所示 func findContacts gt CNContact let key
  • iPhone X 将对象底部与安全区域对齐会破坏其他设备上的外观

    关于 iPhone X 自动布局怪癖的问题 我有两个按钮 以前这些按钮将与超级视图底部对齐 偏移量为 20 以免它们接触屏幕底部 此后我将链接更改为安全区域而不是超级视图 Here s the original setup Looks go
  • BigQuery 未显示链接的 Firebase Analytics 事件日志的任何数据集

    我将我的帐户链接到 Big Query 但 Firebase Analytics 事件不会自动加载到 BigQuery 中 显示 未找到数据集 警告 我的工作进度附在下面 请查收 I have getting firebase Analyt
  • 为什么选择选择器选项后我的 SwiftUI 页面标题会发生变化?

    struct SettingsView View let settings Setting Setting name Aperture Increments options 1 3 1 2 1 Setting name Shutter Sp
  • UIViewController 不旋转到横向

    在许多情况下需要旋转控制器但不起作用 现在我遇到了相反的问题 它正在旋转 我想禁用它 在那个 ViewController 中我有这个 BOOL shouldAutorotateToInterfaceOrientation UIInterf
  • 如何按字母顺序对 UITableView 分区进行排序?

    我有一个包含 3 个类别的分段 UITableView 我正在使用这段代码 NSArray arrayOne NSArray arrayWithObjects one two three four nil NSDictionary dict
  • iOS 7 tabBar 横线,如何去掉?

    Apple 在 iOS 7 中的 tabBar 上添加了一条细线 该线应该在 tabBar 和 UI 之间起到阴影或淡入淡出的作用 由于我使用的是定制的 tabBar 这条线非常令人恼火 你如何删除它 请告诉我这是可能的 否则我需要重新设计
  • AVAudioPlayer 无法从网站播放 m4a 或 mp3 文件类型

    我试图在我的应用程序中找到一个仅纯 m4a 声音的 URL 我有音频的 URL 理论上可以下载它 然后 使用下载的文件URL到声音 我尝试使用AVAudioPlayer播放它 但它不播放任何声音 这是我的代码 在 URL 检索函数中 我调用
  • GLKit的GLKMatrix“列专业”如何?

    前提A 当谈论线性存储器中的 列主 矩阵时 列被一个接一个地指定 使得存储器中的前 4 个条目对应于矩阵中的第一列 另一方面 行主 矩阵被理解为依次指定行 以便内存中的前 4 个条目指定矩阵的第一行 A GLKMatrix4看起来像这样 u
  • 从现有坐标地图套件中查找最近的位置

    我正在为拥有多家商店的客户开发 iPhone 应用程序 目标 C 我有数组中所有商店 20 的坐标 纬度 长 目前我正在考虑循环遍历商店坐标数组并获取从用户当前位置到商店位置的距离 然后将它们添加到数组中并按最小距离进行排序 这是正确的方法
  • Mac 上的 Delphi - 可能吗? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我负责一个 Delphi Win32 项目管理应用程序 我刚刚完成了向 Delphi 2009 的迁移
  • 所有 RestKit 项目在归档时都无法构建

    这个问题涉及RESTKIT 0 9 x 如果您是 Restkit 新手 请考虑使用较新的版本0 10 x https github com RestKit RestKit tree v0 10 1 branch 我最近继承了一个项目 使用r
  • 使用日期 Swift 3 对字典数组进行排序

    我有一个名为 myArray 的数组 其中添加了字典 我希望该字典按时间排序 这是字典中的键 那个时间是在 String 中 时间的日期格式为 yyyy MM dd HH mm ss 我尝试使用下面的代码解决方案 但给出了 从 字符串转换
  • 上传存档错误:“缺少 iOS 发行版签名身份......”

    我正在尝试使用 Xcode 将我的 iOS 应用程序存档上传到 iTunes Connect 但是当我单击 上传到 App Store 时 出现错误 Xcode 尝试查找或生成匹配的签名资产并 由于以下问题未能做到这一点 缺少 iOS 为

随机推荐

  • 是否可以使用egrep来匹配某个范围内的数字?

    有没有办法grep egrep两组数字之间 egrep SomeText 19999 22000 some file txt 它不返回值 我预计 SomeText 19999 ffuuu SomeText 20001 ffuuu SomeT
  • shell pipeline 如何处理无限循环

    每当我需要限制 shell 命令输出时 我都会使用 less 对结果进行分页 cat file with long content less 它工作得很好 但我很好奇的是 即使输出永远不会结束 less 仍然有效 请考虑将以下脚本放在inf
  • 使用谷歌翻译 API 的值无效 (400)

    我的要求有什么问题吗 我有俄语字符串 string 我想用 google API 将其翻译为乌克兰语 我对字符串进行编码 q urlencode string 我请求谷歌API 作为回应 我得到 error errors domain gl
  • 在 ng-view 上滚动时,无尽滚动在 AngularJS 中不起作用

    我正在使用类似的代码this http jsfiddle net vojtajina U7Bz9 在 AngularJS 中创建无限滚动效果 我尝试通过移动可滚动容器的内容 在本例中为ul 到一个单独的 html 文件 然后使用 ng vi
  • ios:显示可变长度、多行文本的最佳方式

    我计划从文本文件加载多段落内容并将其显示在用户界面上 我将从几个文本文件之一加载 并且不会提前知道文本的长度 我的第一个想法是在 UIScrollView 中使用 UILabel 然而 似乎 UILabel 不能根据它包含的行数进行扩展 它
  • 如何在d3.js的Pack Layout中插入饼图?

    大家好 我想在我的包布局中添加饼图 而不是简单的圆圈 假设这是我的饼图数据和饼图布局 var data 2 3 4 5 var 弧 d3 svg arc outerRadius 50 innerRadius 0 var 饼 d3 layou
  • 就数据挖掘和可视化工具支持而言,日志事件的最佳 XML 格式是什么?

    我们希望能够从 Java 应用程序创建日志文件 该文件适合稍后通过工具进行处理 以帮助调查错误并收集性能统计数据 目前 我们使用传统的 日志内容 可能会或可能不会被展平为文本形式并附加到日志文件中 但这最适合人类读取的少量信息 经过仔细考虑
  • c strcmp 源代码

    int strcmp const char s1 const char s2 int ret 0 while ret unsigned char s1 unsigned char s2 s2 s1 s2 if ret lt 0 ret 1
  • 如何避免 ReactJS 中的 jQuery 调用

    我知道 JQuery 是 ReactJS 中的一种代码味道 因为它遍历整个 DOM 来完成它的工作 但是 我发现有些地方很难不使用它 这是一个例子 如果可能的话 我想找到一种更好的方法 我只是想根据字段是否填充来显示或隐藏 div 上的消息
  • redux 中有 OOP 的地方吗?

    我已经使用面向对象编程实践 25 年了 并在过去 5 年里尝试转向函数式编程 但当我尝试做一些复杂的事情时 我的想法总是倾向于 OOP 尤其是现在 ES6 支持像样的OOP 语法 这是我构建东西的自然方式 我现在正在学习 Redux 并且我
  • 来电显示检测:不适用于某些手机

    当有人打电话时 我使用以下方法来检测来电显示 在表单加载时我设置以下代码 this serialPort1 PortName COM3 this serialPort1 BaudRate 9600 this serialPort1 Data
  • mysql UPDATE 比 INSERT INTO 快吗?

    这更多的是一个理论问题 如果我运行 50 000 个插入新行的查询和 50 000 个更新这些行的查询 哪一个将花费更少的时间 插入会更快 因为使用更新 您需要首先搜索要更新的记录 然后执行更新 尽管这似乎不是一个有效的比较 因为您永远无法
  • 在 R parallel::mcparallel 中,是否可以限制任一时间使用的核心数量?

    在 R 中 mcparallel 函数在parallel每次调用包时 它都会将新任务分叉给工作人员 例如 如果我的机器有 N 个 物理 核心 并且我分叉了 2N 个任务 那么每个核心都会开始运行两个任务 这是不可取的 我宁愿能够开始在 N
  • 在 React Native 中创建自定义底部选项卡导航器

    大家好 我想在 React Native 中创建时尚且自定义的底部选项卡导航 任何人都可以知道如何创建上面提到的内容 const customTabBarStyle activeTintColor 0091EA inactiveTintCo
  • 如何构建 libjpeg 9b 的 DLL 版本?

    我想构建 libjpeg 9b 的 DLL 版本 根据文件here https msdn microsoft com en us library ms235636 aspx 看来我们需要添加一个预处理器 declspec dllexport
  • IE9 的foreignObject 的替代品

    我真的很喜欢foreignObject通过svg显示HTML区域 但今天我发现它在IE9中不起作用 为什么我不惊讶 好的 所以我正在寻找一个适用于 IE9 的替代方案 但这似乎很困难 使用foreignObject 来显示多个HTML 元素
  • WordPress插件翻译问题

    我用 poedit 翻译了我的插件 它在本地主机上运行良好 在新的 WordPress 安装上 但是当我将插件上传到服务器上的现有站点上时 一些俄语字符丢失了 相反 我得到的是拉丁文 我用 utf8 编码了 poedite 文件 在标头中我
  • 无法使用 IOptionsMonitor 检测 ASP.NET Core 中的更改

    我正在开发 Asp Net Core 应用程序 我想在运行应用程序后更改配置设置 我正在使用 IOptionsMonitor 但它没有检测到更改 在 Startup cs gt Configuration 方法中我有 services Co
  • 如何在haskell中输入整数? (在控制台输入)

    如何在控制台中输入整数 将其存储在变量中 然后将其作为我创建的函数的参数传递 到目前为止 为了使其有效 我必须执行以下操作 在最后一行中 您可以看到我如何应用该函数 我想要做的是通过控制台请求变量作为整数应用于函数 然后打印结果 mayor
  • tableView: cellForRowAtIndexPath: 不仅为可见单元格调用?

    我有一个带有部分的 tableView 可以打开和关闭 因此 当我点击一个部分将其打开时 它会被单元格填满并且 UITableViewCell tableView UITableView tableView cellForRowAtInde