查看: 854|回复: 0
打印 上一主题 下一主题

[其他] NGUI3.6适配的一种方法

[复制链接]

9903

主题

126

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
53488
精华
316

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2016-5-29 00:43:02 |只看该作者 |倒序浏览

最近在做一款页游,进公司的时候已经是项目要要完结了
但是还存在一些问题

适配[color=rgb(85, 85, 85) !important]问题:
开始时想固定大小,做微端和网页,后来运营商要求要做适配

使用的是ngui3.6,ui原有的适配也只是绑了上下左右的锚点

更该ngui的设置,只能完成按高等比缩放(坑啊,页游怎么够用啊,宽就没人管了啊!(最新版本是可以的))

那么只能自己动手更改了,ngui控制缩放的功能在UIroot下的activeHeight属性

在UIRoot下做如下修改
  1. //设置是的宽高
  2.     public const int ManualWidth = 1920;
  3.     public const int ManualHeight = 1080;

  4.    public int activeHeight
  5.     {
  6.         get
  7.         {
  8.             AdaptiveUI();
  9.             //不需要缩放的范围
  10.             if (manualHeight < 950 || manualHeight > 1100)
  11.             {
  12.                 return manualHeight;
  13.             }

  14.             //原先的正常逻辑
  15.         }
  16.     }

  17.     private void AdaptiveUI()
  18.     {
  19.         if (System.Convert.ToSingle(Screen.height) / Screen.width > System.Convert.ToSingle(ManualHeight) / ManualWidth)
  20.             manualHeight = Mathf.CeilToInt(System.Convert.ToSingle(ManualWidth) / Screen.width * Screen.height);
  21.         else
  22.             manualHeight = ManualHeight;
  23.     }
复制代码
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-21 00:26 , Processed in 0.801955 second(s), 33 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部