zoukankan      html  css  js  c++  java
  • NGUI3.7的自适应问题

    以下是官方文档的一些介绍:
    http://www.tasharen.com/forum/index.php?topic=6710.0

    UIRoot 的Scaling Style有3种。
    1: Flexible 表示你的UI永远是像素精度的。比如100*100 在任何分辨率下都是100*100,不会放大,缩小。所以在高分辨率下,就显的小,在低分辨率下,就显得大。
    (理想的情况下是在PC下使用)

    2: constrained和Flexiable 完全相反。如果一张100*100的图占据了25%的屏幕在1920*1080下。
    那么在1280*720下它也会占据25%。
    content后面的勾表示是选择 正好合适(Fit) 还是 占满屏幕。可以参照一下你的电脑的桌面背景。当你使用Fit的时候,在屏幕上这个背景图总是全部可见的,当使用fill(填充)时,将会全部充满屏幕并且保证它的宽高比(aspect ratio)。这里也是一样。

    3:ConstrainedOnMobiles是以上两者的结合。在发布桌面应用中相当于
    flexible,在移动平台中相当于Constrained。


    如果选择了Flexible,那么要设置最小和最大高度。用来保证你的屏幕尺寸在正常值之内。比如:如果最小为720,那么在800*600分辨率下,你的UI将显示 将和 设置Constrained并且content height是720 一样。也就是说当小于720时,当做720来处理。

    shrink Potrint UI 用来在屏幕竖着的时候调整你的UI大小。

    普通的UI可以直接用anchor固定住,比如以下的左上和右上。


    为了在对话时显示3D的模型,只需在同一层即可。使用Flexible时,可能会出现下图所示的遮挡情况。


    所以采用的是Constrained。这里我将content width 和height 设置为1080p,最大分辨率。


    在对3D模型进行左右固定时,不采用直接的添加UIAnchor(legacy,作者不建议使用),分辨率变小时会出现下图所示的情况,即相互靠近。


    所以考虑添加widget container并且将需要显示的模型置于container下。container中设置anchor。
    另外需要注意的是,在模型Instantiate时先加入到parent下,再改变localposition。另外localscale是在主hierarchy下的scale变化。

    效果如下图:

    分辨率依次为640*360;960*540;1024*768;1280*720

    以上的UI适用锚点,并没有考虑到占据一行或者一整列的情况。以后将会讨论(考虑适用配置文件去做)。

  • 相关阅读:
    第8组 Beta(2/6)(赵红霞)
    第8组 Beta (1/6)(赵红霞)
    第8组 Alpha(6/6)(赵红霞)
    第8组 Alpha(5/6)(赵红霞)
    第8组 Alpha(4/6)(赵红霞)
    第8组 Alpha(3/6)(赵红霞)
    第8组 Alpha(2/6)(赵红霞)
    Windows炫酷桌面钢铁侠主题 雨滴 Rainmeter
    blob 视频无法解析下载?不存在的,来瞅瞅这个方法
    java C C++ .net ps 安卓 等各种教学视频免费送
  • 原文地址:https://www.cnblogs.com/binpan/p/4303804.html
Copyright © 2011-2022 走看看