根据官方文档对Canvas节点的描述如下:
- 在编辑场景时,Canvas 节点的尺寸会保持和设计分辨率一致,不能手动更改。
- 在游戏运行时,在无黑边的模式中,节点的尺寸会和屏幕分辨率保持一致。在有黑边的模式中,节点的尺寸会保持设计分辨率不变。
也就是说,Canvas 的尺寸就等于屏幕可见区域, 我们可以设置子 UI 元素自动对齐到 Canvas 的边框,保证 UI 元素都能在屏幕可见区域正确分布 。
于是我项目设置中Fit width和Fit height都不勾选,并且canvas 组件勾选了align screen,然后在canvas节点下新建了widget组件,widget 对齐方式为对齐canvas 左下角。按照上面文档的说明,这个canvas的尺寸实际就是屏幕的尺寸,widget对齐实际就是对齐的屏幕,按照预期效果任何分辨率下这个widget都应该显示在屏幕的左下角,可是效果却是canvas还是会被裁剪,导致widget没被显示出来。折腾了一晚上还是不行。cocos creator版本:3.6.1
可以有效解答我问题的加我wx愿发个红包
可以看看这个。简单的说,手机游戏就直接宽度适配+widget解决。顶部刘海屏适配可以用SafeArea组件.