问题标签 [uicollectionviewdelegate]
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.
ios - UICollectionView.reloadData() 更改单元格顺序 | iOS 斯威夫特
所以我正在使用一个简单的 UICollectionView,X 行 3 列,其中 X 由变量 matchesFromSelectedSession.count + 1 设置。这是我用于我的 collectionView 的委托函数:
我使用的自定义单元格 MatchCollectionViewCell 仅包含一个标签 matchCollectionLabel,仅此而已。我在视图的 viewDidAppear 函数中使用 self.matchCollectionView.reloadData() 来处理辅助视图更改表并解散回原始视图的情况。
我在第一次使用后标记单元格,我不会在每个 viewDidAppear 之后不断地向单元格添加不必要的子视图。
该表在初始设置后看起来很棒,但在调用 reloadData 后,collectionView 的单元格顺序发生了变化和混乱。如果我编辑单元格的数量,reloadData() 会更新以正确显示单元格编号的变化,但单元格的顺序仍然不正确。
这是reloadData之前和之后的图片
任何帮助将不胜感激!谢谢!
ios - 在以编程方式创建的 UICollectionView 中未调用 didDeselectItemAtIndexPath 函数
我以编程方式创建了一个 UICollectionView。它的单元格还包含以编程方式创建的 UILabel、UIView 和 UIImageView。包含此集合视图的视图也已以编程方式创建。我已经设置了它的数据源并委托给自己。标签、视图和图像视图的 userInteractionEnabled 属性也已设置为 false。集合视图的allowsMultipleSelection 属性也设置为true。
问题是每当我触摸单元格时都会调用 didSelectItemAtIndexPath 函数。但是 didDeselectItemAtIndexPath 函数永远不会被调用。我尝试根据需要将 cell.selected 属性设置为 true/false,但对我的问题没有帮助。
请帮忙!!我花了很多时间搜索它,但没有结果!感谢您的回复。
ios - 连接到委托/数据源后,键盘扩展中的 UICollectionView 不起作用
我使用情节提要制作了一个自定义键盘扩展,它在模拟器中运行良好。
我需要为其添加表情符号功能。
我通过在情节提要上添加第二个视图并将其设置为隐藏在 viewDidLoad 中来完成此操作,然后您按下主(Az)视图上的按钮显示第二个视图(表情符号)。
在第二个视图中,我使用 collectionView 来布局表情符号。在模拟器中一切正常。我可以看到灰色的集合视图。
但是,当我将 collectionView 连接到 collectionView 数据源并在键盘视图控制器中委托时,如下所示:
然后在模拟器中运行它,我得到一个错误说插件无效并且键盘不会在模拟器中加载。
请问我做错了什么?
谢谢你的任何建议。
ios - 调整 UICollectionView 中特定部分的插图
insetForSectionAtIndex(在 DelegateFlowLayout 上)允许为一个部分中的所有单元格设置插图
sectionInset(在 FlowLayout 上)使您能够设置适用于所有部分的插图。
但是,我正在寻找一种仅将插图应用于一个特定部分的方法 - 这可能吗?
ios - 为什么我无法在 collectionView 中选择单元格?
我以编程方式创建了我的 UICollectionView,设置委托、数据源。我可以滚动我的 UICollectionView,单击单元格内的按钮,但我无法选择我的单元格。DidSelect 函数根本不会触发!
我的代码:
我正在解决这个问题超过 2 周,但我不明白它为什么会发生。谁能帮我?
ios - 以编程方式创建 UICollectionView
我正在学习如何以编程方式创建 UICollectionView。我想在应用程序的另一部分创建从用户那里收集的图片网格。这个示例代码能帮我完成这个吗?另外,如何配置数据以发出我想要的图像?我的源代码如下。
UICollectionView:
ImageStore.swift:
ios - UICollectionViewFlowLayout 中的动画更改
我正在使用 aUICollectionViewFlowLayout
在水平滚动视图中排列视图图块。默认情况下,我使用以下命令将它们设为正方形UICollectionViewDelegateFlowLayout
:
这样我就得到了方形瓷砖,大小与当前的大小相符collectionView
。但是,有一种情况是我修改了某些图块的标称尺寸,所以它看起来有点像:
我还没有想出的是如何触发集合视图 A)召回委托以重新布局和 B)如何使其更改动画。
我试过的:
1)
这无济于事。print()
委托回调中的语句表明它从未被调用。
2)
这也无济于事。我不确定它是聪明还是什么。也许足够聪明地注意到它们是相同的并选择退出?
3)
这确实会导致布局发生!但根本没有动画。它只是突然改变。它似乎将磁贴的右侧保持在原来的位置,而不是左侧,并且它似乎在我在两次调用之间进行了其他 UI 更改之后明显发生。
swift - 如何快速获取集合视图的标题?
如何在 DidSelectItemAtIndexPath 上获取集合视图的标题,以便在选择项目时更改标题的文本。
swift - CollectionView 单元格单击展开新视图
我正在尝试创建一个具有 TabBarViewController 和 4 个选项卡的演示应用程序(情节提要上有 4 个不同的 ViewControllers)
在第一个 ViewController 的第一个选项卡上,我有一个 collectionView,其中包含具有 ImageView 和少量标签的单元格。
我要做的是,当您单击一个单元格时,它会扩展到整个屏幕,并且视图仍然停留在选项卡栏的第一个选项卡中,刚才 ViewController 内的视图已更改为新的视图是所选单元格的展开视图,当您向下滚动时,集合视图会继续,您可以单击另一个单元格并展开等等...同时您可以随时按下并显示在视图中展开的最后一个单元格
我希望我对我正在尝试做的事情足够清楚。现在生病添加我已经拥有的代码
ios - UICollectionViewDelegate 中的 Swift 3 警告
我正在使用 Xcode 8 和 Swift 3。我正在设计 UICollectionView 并希望动态设置高度和宽度,因此需要一些答案。在我得到这个解决方案的路上(正确与否 - 我不知道):
但是这个答案是 swift 2.0 并且给出这个答案的人声称它已经解决了。我将它粘贴到 Xcode 中并更改了 Xcode 建议我的一些内容。
现在在这里我收到以下警告:
Xcode 建议我 2 个解决方案 1)在 func 关键字之前添加 private 2)在 fun 关键字之前添加 @nonobjc
我尝试了两种解决方案,它抑制了警告,但从未调用过上述任何一种。我尝试设置断点并尝试了很多方法。如果有人能把我从这个坑里拉出来。