news 2026/5/1 9:58:01

14. UGUI屏幕适配

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
14. UGUI屏幕适配

1.基础适配

2.异形屏适配


1.基础适配

publicclassSmartCanvasAdapter:MonoBehaviour{[SerializeField]privateCanvasScalercanvasScaler;[SerializeField]privateVector2designResolution=newVector2(1080,2340);privatefloatlastScreenWidth;privatefloatlastScreenHeight;voidStart(){if(canvasScaler==null)canvasScaler=GetComponent<CanvasScaler>();AdaptCanvas();}voidUpdate(){// 检测屏幕尺寸变化(比如折叠屏展开)if(Screen.width!=lastScreenWidth||Screen.height!=lastScreenHeight){AdaptCanvas();lastScreenWidth=Screen.width;lastScreenHeight=Screen.height;}}voidAdaptCanvas(){floatdesignAspect=designResolution.x/designResolution.y;floatscreenAspect=(float)Screen.width/Screen.height;// 使用平滑过渡floatminAspect=designAspect*0.7f;floatmaxAspect=designAspect*1.5f;floatclampedAspect=Mathf.Clamp(screenAspect,minAspect,maxAspect);floatt=Mathf.InverseLerp(minAspect,maxAspect,clampedAspect);// 使用插值避免突变floattargetMatch=Mathf.Lerp(1f,0f,t);canvasScaler.matchWidthOrHeight=targetMatch;// 可选:触发布局重建(如果需要)StartCoroutine(RebuildLayoutNextFrame());}IEnumeratorRebuildLayoutNextFrame(){yieldreturnnull;// 等待一帧,让CanvasScaler先更新LayoutRebuilder.ForceRebuildLayoutImmediate(canvasScaler.GetComponent<RectTransform>());}}

2.异形屏适配

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 7:19:41

江协科技10-4 I2C硬件通信

第一点很好去理解&#xff0c;下面的不必在乎&#xff0c;目前用不到&#xff0c;直接看最后一点&#xff0c;可以根据引脚的图去看具体是哪个接口是这两条线这个功能框图还是很好理解的吧&#xff0c;首先看上面的SDA&#xff0c;可知的是&#xff0c;比较器和帧错误校验这一块…

作者头像 李华
网站建设 2026/5/1 7:19:28

永磁同步电机三矢量模型预测电流控制探索

永磁同步电机三矢量模型预测电流控制(有参考文献&#xff09; [1]参考文献&#xff1a;《永磁同步电机三矢量模型预测电流控制_徐艳平》 (1)采用id0 &#xff0c;速度环 PI 控制器的输出作为q轴电流的给定。 在核心模块 TV-MPCC 中&#xff0c;首先根据电流给定值和反馈值计算三…

作者头像 李华
网站建设 2026/4/30 13:05:13

wazero嵌入式部署实战:5个关键步骤解决物联网设备计算瓶颈

wazero嵌入式部署实战&#xff1a;5个关键步骤解决物联网设备计算瓶颈 【免费下载链接】AI_NovelGenerator 使用ai生成多章节的长篇小说&#xff0c;自动衔接上下文、伏笔 项目地址: https://gitcode.com/GitHub_Trending/ai/AI_NovelGenerator 面对物联网设备日益复杂的…

作者头像 李华
网站建设 2026/4/23 12:53:24

程序员技术学习路径完整指南:从入门到精通的5大阶段

程序员技术学习路径完整指南&#xff1a;从入门到精通的5大阶段 【免费下载链接】Best-websites-a-programmer-should-visit-zh 程序员应该访问的最佳网站中文版 项目地址: https://gitcode.com/gh_mirrors/be/Best-websites-a-programmer-should-visit-zh 在当今快速发…

作者头像 李华
网站建设 2026/4/17 15:25:49

SpringBoot 集成 XXL-JOB

这篇文章面向后端工程师和运维同学&#xff0c;手把手教你把 XXL-JOB 无缝集成到 Spring Boot 项目中&#xff1b;包含完整源码示例、配置项说明、常见问题与排查、最佳实践与运维建议&#xff0c;复制即可发布到技术博客。目录 背景与适用场景准备工作&#xff08;XXL-JOB 管理…

作者头像 李华
网站建设 2026/4/30 19:37:24

SpringBoot+Vue3+MySQL集群 开发健康体检双系统

随着全民健康意识的提升&#xff0c;健康体检系统正面临着前所未有的流量洪峰。从每年的“体检季”预约高峰&#xff0c;到企业团检的集中涌入&#xff0c;瞬时的高并发访问足以让传统的单体应用架构瞬间崩溃。如何构建一个既能承载海量用户、又能保证数据安全与业务连续性的高…

作者头像 李华