UITableView 滚动离开屏幕时清除单元格值
Posted
技术标签:
【中文标题】UITableView 滚动离开屏幕时清除单元格值【英文标题】:UITableView clear the cell value when scroll off the screen 【发布时间】:2011-09-03 20:12:13 【问题描述】:我有从 nib 文件创建的表格视图单元格。 tableview 中有不同的单元格,要通过键盘获取输入,我必须在屏幕上滚动 tableview。现在的问题是当我这样做时,我的单元格值被清除了。
我知道当视图关闭并显示在屏幕上时会重新创建单元格,但更糟糕的是我的用户默认变量此时为空,并且我得到空文本字段。
要确认该值仍在用户默认值中,当我重新加载应用程序时,该值会返回。
这就是我创建 tableviewcell 的方式
else if ([indexPath row] == 4)
static NSString *WeeklyHoursCellIdentifier = @"WeeklyHoursCell";
WeeklyHourTableViewCell *tempTextfieldcell = (WeeklyHourTableViewCell *)[self.tableView dequeueReusableCellWithIdentifier:WeeklyHoursCellIdentifier];
if (tempTextfieldcell == nil)
[[NSBundle mainBundle] loadNibNamed:@"WeeklyHourTableViewCell" owner:self options:nil];
tempTextfieldcell = calculateTextFieldTableViewCell;
self.calculateTextFieldTableViewCell = nil;
if ([prefs objectForKey:@"iPhoneWeeklyHours"] != nil)
tempTextfieldcell.textField.text = [prefs objectForKey:@"iPhoneWeeklyHours"];
任何想法的家伙。我真的被困在这里了。
谢谢
【问题讨论】:
您是否尝试记录prefs
、[prefs objectForKey:@"iPhoneWeeklyHours"]
的值?
是的,我试过了,它打印 null。
这篇文章对你有帮助:***.com/questions/5807957/…祝你好运,
prefs 不为空,但 [prefs objectForKey:@"iPhoneWeeklyHours"] 为空。这很奇怪,因为如果我重新启动应用程序,值仍然存在。
【参考方案1】:
上面的代码非常好。我在我的代码中发现了错误。我将 null 分配给 [prefs objectForKey:@"iPhoneWeeklyHours"] 这是我需要避免的。
感谢大家花时间回答这个问题。
【讨论】:
以上是关于UITableView 滚动离开屏幕时清除单元格值的主要内容,如果未能解决你的问题,请参考以下文章
自定义tableviewcell中的文本字段在滚动时离开单元格
到达屏幕结束时在 UITableView 自定义单元格中包装文本(Swift)
UITableView 滚动类似于 Frontback 应用
使用默认单元格值加载一次视图后如何更新 UITableView 单元格(cell.detailTextLabel.text)的值