zoukankan      html  css  js  c++  java
  • UIScreenAdaptive

    using UnityEngine;
    
    namespace Com.Xyz.UI
    {
        [ExecuteInEditMode]
        [RequireComponent(typeof(UIRoot))]
        public class UIScreenAdaptive : MonoBehaviour
        {
            public int aspectRatioWidth = 1280;
            public int aspectRatioHeight = 720;
            public bool runOnlyOnce = false;
            private UIRoot mRoot;
            private bool mStarted = false;
    
            private void Awake()
            {
                UICamera.onScreenResize += OnScreenResize;
            }
    
            private void OnDestroy()
            {
                UICamera.onScreenResize -= OnScreenResize;
            }
    
            private void Start()
            {
                mRoot = NGUITools.FindInParents<UIRoot>(this.gameObject);
    
                mRoot.scalingStyle = UIRoot.Scaling.FixedSize;
    
                this.Update();
                mStarted = true;
            }
    
            private void OnScreenResize()
            {
                if (mStarted && runOnlyOnce)
                {
                    this.Update();
                }
            }
    
            private void Update()
            {
                float defaultAspectRatio = aspectRatioWidth * 1f / aspectRatioHeight;
                float currentAspectRatio = Screen.width * 1f / Screen.height;
    
                if (defaultAspectRatio > currentAspectRatio)
                {
                    int horizontalManualHeight = Mathf.FloorToInt(aspectRatioWidth / currentAspectRatio);
                    mRoot.manualHeight = horizontalManualHeight;
                }
                else
                {
                    mRoot.manualHeight = aspectRatioHeight;
                }
    
                if (runOnlyOnce && Application.isPlaying)
                {
                    this.enabled = false;
                }
            }
        }
    }
  • 相关阅读:
    厦门大学 ACM 1465 连续数列 三分
    厦门大学 ACM 1437 三分
    南京理工 ACM
    厦门大学 ACM 1466 线段树维护
    LCS N(log (N) )
    hdu 1520
    HDU 2196
    zoj 3710 暴力
    互联网创业盈利模式指南(转)
    map
  • 原文地址:https://www.cnblogs.com/123ing/p/3974814.html
Copyright © 2011-2022 走看看