问题标签 [reuseidentifier]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
uitableview - 可重复使用的单元格为许多单元格重复相同的 indexPath
我正在使用 UITableView 和自定义单元格。当我单击一个单元格时,它会转到后屏幕,并将 indexPath 保存在 NSIndexpath 中;当我再次导航到 tableView 时,我更改了先前选择的单元格的 backgroundColor,以便用户可以识别选择。
但是当单元被重用时,它会为许多单元获得相同的 indexPath。你能告诉我如何解决它。我将如何识别电池何时被重复使用。
太感谢了!
ios - Xcode 初学者;重用标识符?
我最近开始在 Xcode 5 中构建一个非常基本的 To-Do List 作为我的第一个项目。几乎完成了 UI 设计和构建后,我现在被困在 TableView 中数据的实现上。我在列表中添加了 13 个项目的列表,并为列表中的第一个项目提供了“ListPrototypeCell”标识符,我的所有代码似乎都是正确的。我的项目有 3 个相同的问题:
我在每个项目上都使用了标识符,尽管有人告诉我不需要在每个项目上都使用标识符,但我仍然会遇到这些错误。
我愿意将我的项目发送给任何认为他们可以帮助我解决问题的人,对于受过训练的人来说,这可能是我犯的一个非常基本的错误。
我很感激任何帮助!
ios - UITableViewController 更改一个可重用单元格会影响其他单元格
我有一个非常简单的UITableViewController
子类,旨在向用户显示单元格中字母表中的字符。当用户按下一个单元格时,它会将其附件类型设置为复选标记。
表格视图工作正常。我在原型单元格的情节提要中设置了我的重用标识符属性,在我开始选择单元格之前,一切看起来都很好。
问题:当我选择任何单元格时,比如“A”单元格,当我向下滚动到其他不可见的单元格时,它们也会被选中。更糟糕的是,当我上下滚动时,有时会删除单元格“A”上的复选标记并赋予单元格“B”。
ios - UITableViewCell 重用 Dobut
我对重用 UITableViewCell 有点怀疑。
当我们创建 UITableViewCell 时,它看起来像下面这样。
所以在我的例子中,UITableView 中的每个单元格都是不同的。如果 UITableView 重用单元格,则单元格内容完全不同。
将 CellIdentifier 传递为 nil 是否是一种好习惯,以便每次创建新单元时,而不是在所有单元都不同的条件下?
或者我应该只是移动 [self configureCell:cell forIndexPath:indexPath]; 出来自己处理?
ios - 防止 UITableViewCells 出队并重新加载
我目前正在制作一个显示用户个人资料的应用程序。为此,我为不同类型的数据(电话号码、邮件地址等)使用了带有自定义单元格的 UITableViewCell。每个配置文件最多有 8 个单元。
允许用户以最简单的方式编辑其个人资料。当 tableview 的编辑模式被触发时,所有可编辑的标签都被 textfields 替换。然后在修改完成后返回标签。
Homever,不可见的单元格似乎有问题。每次它们重新出现在视图中时,它们都会被重新加载,再次触发 setEditing:YES 方法等等......因此,在文本字段中所做的每一次更改都会丢失。
有没有办法防止 tableview 删除不可见的单元格并将它们添加回来?只有八个单元格,因此不会占用太多资源,而且每次进行更改时我都不必保存它们的状态。
PS:我用 dequeueReusableCellWithIdentifier 方法和每个单元格的标识符尝试了几件事,但我没有设法实现我想要的。每次我隐藏一个单元格时,它的内容都会刷新。
ios - UiButton state keeps changing when scrolling in UITableview
I know there are a few posts abou this but I am still confused why the button i created in a tableview wont keep its state when its selected. When I scroll, unselected buttons get affected and it changes back and forth. Please help.
ios - UICollectionView 滚动后重新排序单元格
我在我的实现中添加了这个 UICollectionViewDelegate:
在我的自定义单元格中,我有这个方法:
因此,您可以看到单元格是否没有 UIImageView,然后我开始创建它,并在后台从本地路径获取图像并将其调整为单元格内容视图宽度,然后在主队列中将图像设置为 UIImageView。
这部分效果很好,但是当我尝试滚动 UICollectionView 时,例如使用 10 张图像,我注意到,例如,如果当我向下滚动时前 2 个顶部图像消失,然后当我滚动回顶部时,图像会被更改放置。
这是向下滚动之前的图像状态:
我滚动UIColectionView
回顶部后的这种状态:
因此,您可以首先看到项目更改了它们的位置。正如我if (!self.imageView)
在上面的代码中设置的那样,它应该意味着图像永远不会被创建两次或更多次。
我打开调试器并正在检查这个方法:
因此,当 UICollectionView 第一次创建单元格时,图像路径会一一返回。
第一次第一个 UICollectionViewCell 有 0x8fbc1d0,第二个有 0x8d0a4c0 地址
但是当我向下滚动然后向上滚动时,调试器在第一个 0x8d0a4c0 向我显示了第二个地址,然后向我显示了 0x8fbc1d0
但我不明白为什么物品会改变它们的顺序。或者也许这是另一个问题?
此外,我在代码中没有任何方法可以让我重新排序单元格。只有少数 UICollection 视图方法委托配置单元格计数并创建它们。
此外,如果我删除if (!self.imageView)
似乎一切正常,但是我的代码每次调用调度对我都没有好处,因为当我将图像调整为单元格大小时,我不需要执行两次。
objective-c - 已注册的 NIB,当我使用 dequeueReusableCellWithIdentifier 时仍然出现断言错误
我有一个自定义UITableViewCell
类,我想用它来创建自定义表格单元格。我创建了自定义表格单元格的 xib 以及它的头文件和实现文件,都称为RTRepairOrderTableCell.m/.h/.xib
.
我的问题是,即使我将表格单元格的重用标识符设置在RTRepairOrderTableCell
.xib 文件内部并在表格视图控制器中注册了 xib,但当它尝试出列或创建新单元格时,我仍然遇到断言错误利用。
在我的视图(表)控制器内部,我有以下内容:
这里没有错误,它完成viewDidLoad
得很好。
在我的里面cellForRowAtIndexPath
我有以下内容:
根据我看过的每个教程,只要我在 xib 文件中正确设置了重用标识符,并且我viewDidLoad
在将显示表格单元格的视图控制器类中注册了该 xib,这应该可以工作,所以我在关于我为什么得到的损失
ios - 用于可重用视图的 iOS Swift UICollectionView registerNib 不起作用
我正在尝试使用 UICollectionViewController 创建一个类似 iCalendar 的方法。现在我正在尝试添加可重用的视图作为每天的列标题。
我制作了一个故事板并添加了一个链接到此类的 UICollectionViewController:
ColumnHeaderView nib 实际上是一个 xib 文件,其视图包含单个标签。此视图链接到此类:
数据源和布局:
我还没有那么远,因为我陷入了一个非常基本的问题。
为什么会这样?我错过了什么吗?
任何帮助都会得到帮助:) 提前谢谢你
编辑:我发现了问题!这一行是错误的:
我试图获取装饰视图的 ViewLayoutAttributes,但它被注册为可重用视图。我改变了这条线,它又可以工作了。
ios - UITableviewCell 在我滚动时显示另一个单元格的文本
当我滚动我的自定义 UITableviewCells 得到错误的内容(另一个单元格的文本)。这是随机发生的。我尝试清除单元格,但后来我得到了一些空白单元格。我的代码如下。谁能告诉我发生了什么。我从这里和其他地方阅读了许多需要清除单元格的文章,但没有一个对我有用,因为我不确定您在什么时候清除数据。我什至尝试在我的单元格的班级中实现 prepareForReuse 但没有好处。