Unity中编辑Canvas按钮出现中心小白框及多分辨率适配异常问题求助
Unity UI分辨率适配及按钮溢出问题解决方案
- 优先排查
Canvas Scaler组件配置,这是绝大多数适配问题的根源- 将UI Scale Mode参数调整为
Scale With Screen Size - Reference Resolution填写你开发阶段使用的基准分辨率,常规可选1920×1080
- Screen Match Mode选择
Match Width Or Height,横屏项目将Match滑块拉至0(匹配宽度),竖屏项目拉至1(匹配高度),需要覆盖多极端分辨率的场景可选择Expand模式,保证所有UI元素始终完整显示在屏幕范围内
- 将UI Scale Mode参数调整为
- Canvas中心的小白框是编辑器的安全区参考标识,不会影响实际运行效果,如需关闭可通过路径
Edit > Project Settings > Player > Resolution and Presentation,取消安全区显示的勾选即可 - 按钮溢出问题可通过调整锚点配置修复
- 选中溢出的按钮控件,拖动Rect Transform面板的锚点对齐到对应屏幕边缘,比如固定在左上角的按钮就把锚点对齐到左上角,固定在底部居中的按钮就对齐到下边缘居中位置,锚点绑定后UI会跟随对应边缘做相对位移,不会出现分辨率变化后偏移溢出的问题
- 不要直接写死控件的position坐标数值,优先使用锚点+相对偏移的方式设置位置
- 若按钮属于列表/容器类的子元素,可给父节点添加
Content Size Fitter+Horizontal Layout Group/Vertical Layout Group组件,自动适配子元素尺寸,避免内容超出容器范围
适配完成后可直接在Game窗口切换不同分辨率预设,实时验证适配效果,无需打包后测试。
内容的提问来源于stack exchange,提问作者Umikali
相关产品推荐
相关产品推荐

