- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个最初加载一个自定义单元格的 tableView。该单元格有一个文本字段和一个用户可以修改的段控件。还有一个添加单元格按钮,如果按下该按钮,则会在前一个单元格下方添加另一个自定义单元格。用户最多可以添加 15 个这些自定义单元格。当前几个单元格最终离开屏幕并创建新单元格时,它们只是创建了与 index.row 位置 0、1、2 等完全相同的单元格。
例如:用户在 index.row 位置 0 的自定义单元格的文本字段中输入“Test”。现在,当该单元格离开屏幕并且用户添加一个新单元格时,它只是添加带有“Test”的 textfield.text 值的原始单元格“和所有。如果我将新单元格的 textfield.text 值修改为“Demo”,它会将 index.row 位置 0 处的文本字段更改为该值。
现在我知道 dequeueReusableCell 是如何工作的。它会抓取屏幕外的单元格。但是我该如何解决这个问题。让它每次都创建一个独特的单元格。
*编辑这就是我插入新单元格的方式。
/* create cell and add to array */
NSString *CellIdentifier1 = @"cell";
CustomCell *customCell = (CustomCell*)[self.myTableView dequeueReusableCellWithIdentifier:CellIdentifier1];
/* save cell to array */
[self.fetchCellArray addObject:customCell];
/* Add cell in table */
NSIndexPath *indexPath2 = [NSIndexPath indexPathForRow:deleteInsertIndex inSection:0];
[self.myTableView insertRowsAtIndexPaths:@[indexPath2] withRowAnimation:UITableViewRowAnimationAutomatic];
最佳答案
您不应将单元格存储在数组中。您应该将单元格的支持数据存储到一个数组(或您认为合适的任何其他存储)中,并使用数组中的数据更新您的出列单元格。
例如,如果用户添加“Test”,您会将其添加到数组中索引 0 处。现在用户添加“Demo”,您将其添加到数组中索引 1 处。现在用户添加的字符串越来越多,你把它们全部添加到数组中。一旦用户滚动到顶部,并要求您为第 0 行第 1 行提供一个单元格,您将出列一个单元格 - 任何单元格 - 并根据索引 1 处数组的值设置它的标签。对于单元格来说也是明智的在第 0 节索引 0 - 数组将返回“测试”。
关于ios - dequeueReusableCellWithIdentifier 的解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20622698/
我已阅读 this question并认为我理解这两种方法之间的区别,直到我找到一个奇怪的例子: 在Storyboard中设置table view cell的样式为Basic,Identifier为C
dequeueReusableCellWithIdentifier 有两个重载,我正在尝试确定何时应该使用一个与另一个? 关于 forIndexPath 函数的苹果文档指出,“此方法使用索引路径根据单
我在我的一个 TableView 中使用仪器发现了内存泄漏,恰好在这一行: [[NSBundle mainBundle] loadNibNamed:@"ShopListCell" owner:self
我正在使用带有 UITableViewController 和 UITableViewCell 子类的 ios5 Storyboard。我不想在 View 的 Storyboard设计器中设计单元格的
我正在尝试在独立于 Storyboard 和 Nib 配置的表格 View 中使用自定义单元格。 每当我使用 tableview 的 dequeuing 方法时,这些单元格都会作为标准返回,即磨坊单元
如果我打电话: -[UITableView dequeueReusableCellWithIdentifier] 然后我选择不是 在此方法中重用单元格 - (UITableViewCell *)tab
我的目标是显示一个单元格列表,这些单元格由我从服务器上提取的一些数据填充。当用户向下滚动时,我希望有一个表格单元格,上面写着“正在加载更多”,然后随着更多单元格被数据填充而消失。 以下是执行此操作的相
好的,我有一个表格,其中包含 3 个不同的原型(prototype)单元格(cellVaccination、cellAdmin、cellExpire)。在我的 cellForRowAtIndexPat
我有一个 UITableView,一旦它滚出屏幕,它就不会释放它显示的数据。 每个表格单元格都需要显示名称、日期和图片。第一个充满屏幕的单元格在启动时可以正常工作,因为它们没有被重复使用。然而,一旦您
我在带有自定义单元格的 UIViewController 中使用 UITableView。但是,当 dequeueReusableCellWithIdentifier 被调用时,它有时会创建一个新单元
我试图了解出了什么问题,因为当我进行 TableView 更新并调用 cellForRowAtIndexPath 时, dequeueReusableCellWithIdentifier 无法取回我需
我有一个使用 NSLayoutConstraints 的自定义/子类 UITableViewCell。最左边的 UIImageView 可能填充也可能不填充图像,如果没有,则此字段右侧的对象自然会向左
我有一个最初加载一个自定义单元格的 tableView。该单元格有一个文本字段和一个用户可以修改的段控件。还有一个添加单元格按钮,如果按下该按钮,则会在前一个单元格下方添加另一个自定义单元格。用户最多
我有一个核心数据支持的 TableView ,它显示了一个可编辑字段列表,对于不同的字段类型,我有不同的 UTableViewCells 和不同的单元格标识符。当我在模拟器中滚动得太快或试图“弹”过最
我使用几乎每个人都用来处理 cellForRowAtIndexPath 的“著名”样板代码: UITableViewCell *cell = [tableView dequeueReusableCel
=> Demo Project @ GitHub Int { return 0 } 但随后应用程序崩溃了 -[UITableViewDataSource tableView:viewForFoo
我的 UITableView 有问题。当 UIViewController 结束加载 UITableViewCell 时,第一次加载大约需要 4 秒 6 秒。当我再次调用我的 UIViewContro
如果 dequeueReusableCellWithIdentifier 在单元格离开屏幕后重新使用它们,这是否意味着在单元格上设置的实例变量将由于其新用法而被覆盖? 例如,如果我要在实例变量中缓存单
我在想 - dequeueReusableCellWithIdentifier 仍然必须实例化一个新单元格,并且根据实例化单元格的尺寸,它必须重新计算布局。那么这种出列实际上有什么帮助呢? 最佳答案
我对 dequeueReusableCellWithIdentifier 方法的使用及其工作原理有点困惑。我目前有一个 searchBar 和两个可变数组(比如 filteredTableData 和
我是一名优秀的程序员,十分优秀!