我的实现是一个集合视图,它具有使用UICollectionVIEwLayout的自定义布局.这个布局是根据 this answer发布的代码构建的.由于我想让我的图标摇动并在左上角有一个小删除按钮,我已经将UICollectionVIEwLayoutAttributes子类化了一个新属性deletebuttonHIDden.
所有这一切都很好地协同工作.但是当我使用更多图标填充集合视图以适合一个页面时,我遇到了问题.当我进入编辑模式,并来回滚动时,我发现有些图标不再抖动了.我试着调试它,我意识到我的一些单元格没有调用applyLayoutAttributes方法.
我也尝试在方法scrollVIEwDIDScroll中调用invalIDateLayout,但这没有帮助.
有没有人知道为什么有些单元格没有应用它们的属性?
更新:
我刚刚发现Apple有一个patent用于摇晃图标.因此,实施此设计不会得到批准.因此,这个问题不再适用.
f you subclass and implement any custom layout attributes,you must also overrIDe the inherited isEqual: method to compare the values of your propertIEs. In iOS 7 and later,the collection vIEw does not apply layout attributes if those attributes have not changed. It determines whether the attributes have changed by comparing the old and new attribute objects using the isEqual: method. Because the default implementation of this method checks only the existing propertIEs of this class,you must implement your own version of the method to compare any additional propertIEs. If your custom propertIEs are all equal,call super and return the resulting value at the end of your implementation.
我希望它会对你有所帮助.
总结以上是内存溢出为你收集整理的iOS – 不会为某些单元格调用applyLayoutAttributes全部内容,希望文章能够帮你解决iOS – 不会为某些单元格调用applyLayoutAttributes所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)