- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
编辑: 我已经创建了一个非常小的应用程序来完美地代表问题。 https://drive.google.com/file/d/0B6sI4Feh1HJUb3pGa2pBUmY4QW8/view?usp=sharing
在示例应用程序中,我们只需向下滚动然后按下顶部栏上的按钮即可查看我遇到的问题
我正在使用 https://github.com/jamztang/CSStickyHeaderFlowLayout在我的 Collection View 中具有粘性 header 行为(如默认 UITableView)。
滚动浏览 Collection View 时效果很好。我在 collectionview 外有一个搜索栏,允许用户使用搜索文本过滤数据,每次用户输入字母时,我都会用找到的数据刷新 collectionview 的数据。
问题是假设 Collection View 中当前有 4 个部分,并且它在底部完全滚动。当我输入一个 certian 字母时,它会过滤掉除单个项目(带有单个标题)之外的所有内容。然后,内容大小会针对 Collection View 发生变化并显示正确的数据,但标题太低(请参见屏幕截图)。
我在 flowlayout 内部和 layoutAttributesForElementsInRect
内部进行了调查,我看到它实际上将框架的原点 Y 设置为 0(就像它应该的那样),但似乎 collectionview 没有使用这个值并使用前一个(当向下滚动 Collection View 时)。
知道什么会导致 UICollectionView
不使用 layoutAttributesForElementsInRect
中所需的框架吗?
最佳答案
我试图解决这个问题,但看起来这是不可能的,直到 UICollectionViewLayout 机制对我们来说是黑盒。自定义布局在 reloadData 上正确地将更新的框架返回给布局引擎:
但是隐藏引擎甚至不询问属性是否相等。在您的情况下,您可以使用简单的解决方法。只需在重新加载后更新 contentOffset
。:
[self.collectionView reloadData];
self.collectionView.contentOffset = CGPointZero;
关于ios - CSStickyHeaderFlowLayout 标题框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31656903/
编辑: 我已经创建了一个非常小的应用程序来完美地代表问题。 https://drive.google.com/file/d/0B6sI4Feh1HJUb3pGa2pBUmY4QW8/view?usp=
我正在尝试使用 CSStickyHeaderFlowLayout 在我的应用中制作视差照片效果- https://github.com/jamztang/CSStickyHeaderFlowLayou
我们的APP使用CSStickyHeaderFlowLayout进行视差采集,并使用MJRefresh进行拉动刷新。 但是拉动后,有一个奇怪的动画。为了清晰显示,我将动画持续时间设置为 3 秒。动画是
我正在使用 CSStickyHeaderFlowLayout用于 Swift 中的视差 header 。 Xcode 7 swift 2.0 。 我测试了 github swift demo .当转到
在我的 UICollectionView 中使用了 CSStickyHeaderFlowLayout 类 ( https://github.com/CSStickyHeaderFlowLayout/C
我是一名优秀的程序员,十分优秀!