问题标签 [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.
objective-c - 自定义 UITableViewCell 未正确出列
我有一个带有 3 个自定义 UITableViewCells 的 UITableView,我目前正在像这样出队:
我尝试过多种方式,但问题是即使我仍然使用不同的标识符将它们全部出列,当我滚动 tableView 时,有时我的第一个单元格出现在我的第三个单元格的位置,反之亦然。似乎有一些奇怪的缓存正在进行。
有谁知道为什么?谢谢。
ios5 - 单元可重用导致在 iOS5 中重复数据
我正在为我的表格视图使用自定义单元格。在我的单元格中,我有图像视图和按钮。我在单行中显示 3 张图像。当我选择 button 时,我使用的是复选框图像,当再次点击 button 时,它会取消选择复选框图像。当我选择第一行中的按钮并滚动 tabelview 时,它还会检查第 3 行或第 4 行的按钮。我认为这是由于细胞的重用。这是我的 cellForRowAtIndexPath 代码:
有时隐藏按钮和图像视图的逻辑也会变得混乱。即使数据可用,它也会隐藏图像视图和按钮。
非常感谢任何帮助。谢谢
iphone - 自定义 UITable 单元格如何使用唯一包含的对象状态构建?
所以我有通过 builder 定义的自定义表格单元格并通过 nib 加载(它有一个 idexPath 的属性),它有 2 个按钮。我想显示这些按钮状态动态变化的表格。IE 第一个单元格 - 都启用,第二个单元格 - 两个按钮都禁用,第三个 - 第一个 btn 启用和第二个 btn 禁用等等。
现在,如果我使用 1 个重用标识符,所有单元格将看起来与我不想要的相同。我希望每个单元格都有自己的视图,这意味着每个单元格都有唯一的重用 ID。
但是如何达到这一点?如果我将创建一些独特的 cellId 在
这将是一个字符串,那么我无法在对象的含义上创建相同的字符串。我可以创建具有相同文本的字符串,但这将是另一个对象,因此我无法通过reuseId 再次获取先前创建的具有此类cellId 的单元格。所以我不能改变一个单元格的按钮状态,然后用
但只有[tableView reloadData];
意志起作用。
objective-c - 根据部分更改 CellReuseIdentifier
我有一个 UITableView 和一些具有不同表格视图样式的 .xib。每个 .xib 都有它自己的类,并使用基于该部分的重用标识符进行注册。例如:在我的 viewDidLoad 我有以下内容:
我如何将这些重用标识符中的每一个分配给我的 cellForRowAtIndexPath 中的一部分单元格而不引起任何问题?
谢谢。
objective-c - UITableView 在动态环境中创建静态单元格
我有一个UITableView
当前设置为动态的,因为单元格会根据用户输入而变化。一些单元格具有文本字段,其他单元格具有开关,而其他单元格具有段选择器。我不确定从哪里开始。这是我打算做的。让我知道是否有任何错误。第一步(我认为)是在单元格中创建我想要的对象,例如 UITextField 或 UILabel,然后将其添加为子视图。然后我会给它一个标签。
这就是我卡住的地方。因为单元格被重用,文本字段要么跳转到其他字段并且其中的文本会消失,要么跳转到另一个单元格,对吗?
我该怎么做呢?我真的被困在这里,所以感谢您的帮助:)
期待回复!
ios - 如何在一个 uitableview 中为不同的单元格样式分配不同的标识符?
我是ios开发的新生,我想在一个uitableview的不同部分实现不同的单元格样式。我的表格视图有两个部分,每个部分有三行。
我知道不同的单元格应该有不同的重用标识符来检索重用单元格,但是当我编译我的应用程序时,控制台总是显示以下信息:
任何帮助将不胜感激,我的代码如下:
ios - iOS:UITableView 在滚动太快时混淆数据
我对 UITableViewCell 进行了子类化以向其添加自定义外观。在 MYTableViewCell 的初始级别,我添加了 4 个子视图:UIImageView 和三个 UILabel(s)。所有 4 个子视图都分配有不同的标签。
在 cellForRowAtIndexPath 方法中,如果一开始不可用,我要么创建一个新单元格,要么重用可用的单元格并将正确的文本分配给 ui 标签。
我遇到的问题是,如果我尝试超快滚动,那么数据就会变得混乱,但是如果我上下滚动得更慢,那么一切正常。
有什么想法吗??
下面是代码:
uitableview - 为什么手动重用的 UITableViewCell 在重新加载行时会消失?
如果我UITableViewCell
使用reuseidentifier=nil
作为ivar 保持一个固定值并为特定行返回此实例,然后专门使用重新加载此行[tableView reloadRowsAtIndexPaths:withRowAnimation:]
,则行内容会消失(或有时会闪烁)。当我滚动并返回时,它再次变得可见。[tableView reloadData]
另一方面,如果我这样做,它不会消失。
- 为什么当我重新加载行时它会消失?
- 为什么不呢,当我重新加载整个表时?
这是一个示例项目:https ://github.com/hannesoid/HOTableViewTests
我在 iOS 6 上对此进行了测试。 我知道通常不建议以这种方式手动重用 UITableViewCell(没有重用标识符和出队),但在一些相当静态的场景中它会简化事情。
ios - 从可重用单元中出列时,自定义 CollectionViewCell 上会触发什么方法?
我ItemCollectionViewCell
像往常一样使用其父 ViewController 中的方法将可重用的自定义出列
但是在我的身上,ItemCollectionViewCell
我已经实现了该方法,该方法initWithFrame
仅在最初被调用,但在单元格出列以供重用时不会被调用。
在调用父视图控制器ItemCollectionView
后被重新添加到队列之前在内部触发的方法是什么?[collectionView dequeueReusableCellWithReuseIdentifier:@"cell" forIndexPath:indexPath]
iphone - UITableView 和 Cell 在错误的位置显示内容
我的 tableview 有两个问题,即 tablefooterview 中的“Go Home”按钮在尚未到达 tableview 末尾时显示(在屏幕中间)。正如您在第一张图片中看到的,主页按钮出现在屏幕中间,这是我不想要的。它必须保持在表格的底部。
我的第二个问题是分段控件,它通常位于视图的顶部,在我的一个单元格中再次出现,它不属于它。我已确保已禁用单元重用标识符。
单元格中只填充了文本,所以我不明白为什么显示分段控件。
编辑:添加代码
填充单元格的代码:(只是其中的一部分,但它只是另一个单元格中的其他文本,没有任何变化)
页脚代码:
}
额外评论:我在不同的视图(不同的表格视图)中使用相同的页脚,只有一个部分,这里的按钮显示正确。