zoukankan      html  css  js  c++  java
  • Unity UI适配 之 GridLayoutGroup组件下的内容适配(进度条适配)

    好久没有更新博客了,蓝廋啊。

    今天写一写关于GripLayoutGroup组件的屏幕适配问题,以在ARPG游戏中常用的经验条适配来举例子,以此来加深自己的记忆,以便在下次需要制作该功能时能够快速完成。

     

     

     以上是效果截图。

     

    一,制定标准宽高

     

     

     

    二,了解GridLayoutGroup组件

       在该组件所在物体的子物体成为内容

       pading :该组件下的内容相对于该组件的上下左右缩进

       cell size:内容的大小

       spacing:内容之间的距离

     

     

     

     

     

     

    三 , 计算方法

    在本案例中,通过高度来适配屏幕。

    为了让进度条适配,我们需要计算GridLayoutGroup组件中cell size的大小,计算x的值即可。

    计算x值的方法是: x = (1334 - 70(左边exp图片的大小) - 6 * 9 (spacing的x的值为6,总共有9个间隙)) / 10(有10个子物体);

    我们不能通过1280 替换1334 进行计算,因为在真机上屏幕的高度已经发生了缩放,所以我们需要计算UI空间下的真实的宽度,计算公式: 标准高/实际高 = 计算使用的宽度 / 实际宽;

    所以 计算使用的宽度 = 标准高/实际高 * 实际宽;

    得到实际高和实际宽的法:Screen.Height   Screen.width

    标准宽高是 1334 x 756

    在真机上,屏幕的大小是1280 x 800

    计算使用的宽度 w= 756 / 800 *1280;

    x = (w - 70 - 54) /10;

    得到的值是x = 108.56

     

     

    这个知识点稍难理解,自己拿出草稿纸算一算。

  • 相关阅读:
    【洛谷P3389】【模板】高斯消元
    【NOIP2016】提高组
    【NOIP2013】提高组
    【NOIP2012】提高组
    【NOIP2011】提高组
    【NOIP2010】提高组
    【NOIP2009】提高组
    【NOIP2008】提高组
    【NOIP2007】提高组
    【51nod 1189】阶乘分数——阶乘质因数分解
  • 原文地址:https://www.cnblogs.com/spiderljx/p/14197442.html
Copyright © 2011-2022 走看看