问题标签 [uicollectionviewcell]

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.

0 投票
4 回答
12235 浏览

ios - UICollectionView:不同大小的项目不计算重复使用的项目

我有一个包含不同项目大小的集合视图,我在其中声明

当单元格在collectionView:cellForItemAtIndexPath: 项目中被重用时,将使用重用的项目大小而不是sizeForItemAtIndexPath:.

有任何想法吗?

0 投票
1 回答
1957 浏览

objective-c - 在常规 UIView 中使用 UICollectionView

我创建了一个常规视图,我想使用其中的一半 with UICollectionView。我将其UICollectionView拖到视图上并调整其大小。我拖了一个UICollectionViewCell新的视图并设计了它(全部在 XCode 的布局构建器中)。

该类UICollectionViewCell被调用ImageCell,所以我在我的viewDidLoad活动中将单元类注册到UICollectionView

这就是我尝试将图像加载到集合视图单元格的方式:

}

CellImageViewIBOutlet一个_UIImageView。我知道我正在尝试加载相同的图像 - 这仅用于测试。图像存储在 Supporting Files 文件夹中。

问题是我得到的只是黑屏。没有显示图像。我知道我正在正确加载图像,因为我尝试对常规 ImageView 执行相同的操作并且它有效。

0 投票
12 回答
36965 浏览

ios - UICollectionView 的单元格消失

发生了什么

目前我有一个UICollectionViewsUITableView. 通过这种方式,我创建了一个看起来像 Pulse News 的应用程序。我的问题是,有时第 6 行和第 11 行会完全消失,在应该是单元格的地方留下一个空白区域。我实际上并不介意,如果所有的细胞都是这样的(这样我可以假设我没有正确地做事),但问题是,只是发生在那些特定的细胞上。

我的理论

第 6 行和第 11 行是我开始滚动时出现的行,所以默认情况下我可以看到 5 个单元格,当我第一次水平滚动时,第 6 行出现(有时是空白)。

是)我有的

我现在唯一要做的就是:

viewDidLoad. 在创建单元格时:

因此,在我的低估中,这里没有什么好看的。我虽然数据源(一个虚拟的 JSON 文件)有问题,但有时它可以正常工作并且单元格显示,所以我猜从那部分是可以的。

所以我的“问题”:有人知道发生了什么吗?我真的不想说这是 iOS 的错误,但我想不出别的。


编辑 1.0

令人惊奇的是,这种方法

在不计算 [0,5] 的情况下从indexPath[0,4] 变为 [0,6]。我第一次在 iOS 中真正看到这种情况。


编辑 2.0

我改变了创建单元格的方式,而不是出队,我使用的是旧方式:

还是一样的悲惨结果。

0 投票
2 回答
11862 浏览

ios - 在 UICollectionView 上禁用单元格重用

我在我的应用程序中使用 UICollectionView,在单个单元格上带有手势识别器,允许用户“滑动打开”单元格以显示下面的更多数据。

问题是,我经常在 CollectionView 中重新加载数据;因为应用程序每 3 秒左右接收一次更新。这会导致在滑动单元格的过程中,collectionview 单元格被重用的不良行为。

用户将开始滑动一个单元格,应用程序将收到更新、reloadData,而另一个单元格将开始接收手势并开​​始滑动。

我曾尝试在幻灯片发生时禁用应用程序的更新,但这会导致应用程序内出现其他并发症,所以我想知道是否有办法禁用单元格重用,(我最多只有 20 个单元格,所以我没有'不认为性能会大幅下降)。

谢谢!

0 投票
2 回答
246 浏览

ios - 一旦方法完成,有没有办法运行代码?

一旦方法完成,我想开始代码。我有一个UICollectionView,它从服务器加载图像数组,然后将这些图像添加到我创建的单元格中的 ImageView 中,以便更好地解释这里是我的代码:

因此,一旦方法[objectiveGov arrayImages];完成,我希望它运行myCell.insightImageView.image. 有没有办法做到这一点?我尝试创建一个在方法末尾发布的 NSNotificationCenter 但这不起作用,因为 UICollectionViewCell 方法在分配 UICollectionView 时启动。有任何想法吗?谢谢!

编辑 ArrayImages 方法代码:

0 投票
2 回答
3627 浏览

objective-c - 有什么方法可以知道哪个集合视图单元位于特定点?

我有一个 CGPoint,我想知道我的收藏视图中的哪个单元格当前包含该点。有什么简单的方法可以做到这一点,还是我必须编写自己的方法?

0 投票
3 回答
8777 浏览

iphone - 用 nib 定义 UICollectionViewCell

如果我理解正确, a 的内容UICollectionViewCell应该进入它的contentView属性和背景backgroundView中。

然而,当我将 a 拖到UICollectionViewCellInterface Builder 时,并没有提到contentViewor backgroundView。如果我添加子视图,它们会将整个单元格作为其父级,而不是contentViewor backgroundView

UICollectionViewCell那么,用 IB定义 a 的正确方法是什么?

0 投票
1 回答
547 浏览

objective-c - 如何保存 UICollectionViewCell 的状态

请帮助我,我怎样才能保存UICollectionViewCell. 例如:我有单元格UIWebView,当我dequeueReusableCellWithReuseIdentifier:forIndexPath:返回错误的单元格时,不是为了这个indexPath,之后UIWebView内容将重新加载以正确indexPath抽搐。谢谢!

如果我使用此方法,则cell.isShowed == YES返回错误的单元格indexPath。但是,如果我不使用cell.isShowedUIWebView 的内容,将在每个显示单元格中重新加载对不起我的英语:)

0 投票
1 回答
2999 浏览

objective-c - 返回整数作为部分中的项目数时出错

我有一个 iPad 应用程序,使用 Storyboards、Tab Bar 和 XCode 4.5。我的一个场景在左上象限有一个 UITableView,在右上象限有标签和 UITextBoxes。

当我单击第二个选项卡时,我被带到了上述场景。这是代码:

这是接口定义:

这是错误:

*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[UIView collectionView:numberOfItemsInSection:]: unrecognized selector sent to instance 0x7d925b0”

如您所见,我对 numberOfSectionsInCollectionView 使用了相同的代码。我研究了 SO 和 Google 并没有发现任何适用的。

我究竟做错了什么?

0 投票
1 回答
200 浏览

ios - NSArray 没有加载数组中的所有对象?

我目前正在对 UICollectionViewCell 进行子类化,并让它在数组中加载单元格(下面是 collectionViewCell.m 中的代码):

一切都很好,它显示了我在- (NSInteger) collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section方法中的返回值,即 11。但是当我记录 cellArray 的启动过程时,它看起来像这样:

应用日志数据

所以单元格数组正在计算数组添加单元格的次数,由于某种原因,它只增加到 6。奇怪的是;加载所有 11 个项目,但 NSArray 没有记录它已加载所有 11 个,它只是在 6 处停止,这很烦人......我尝试了几种不同的方法来解决这个问题,但它们似乎没有工作,它的快把我逼疯了!我想没有其他人遇到过这个问题吗?

我将添加我的 rootController.m 集合视图代码以防万一,但是,它确实以正确的方式链接,所以这不应该是问题。