如果这个collection view在一个 viewcontroller没什么问题。

比如你想让上下左右都是8 

那设置为:

layout.sectionInset = UIEdgeInsetsMake(8, 8, 8, 8)

就可以正常了


但是如果这个viewcontroller 在 navigation controller内的时候,好像默认会有个 

上面是 navigatoinbar的高度(44) statusbar高度(20) 共64的inset

下面会有个tabbar的高度49  共49的inset

所以此时如果还想正常显示

layout.sectionInset = UIEdgeInsetsMake(-56, 8, -41, 8)

才可以

或者,把collection view的布局  上下调整为 - 64 和 -49 


之所以这样子设计应该是为了和 navigationbar的玻璃效果配合,这样子可以让这个content在整个屏幕内,会影响navigationbar的玻璃效果。

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐