zoukankan      html  css  js  c++  java
  • ugui代码设置ui锚点

    using UnityEngine;
     
     public enum AnchorPresets
         {
         TopLeft,
         TopCenter,
         TopRight,
     
         MiddleLeft,
         MiddleCenter,
         MiddleRight,
     
         BottomLeft,
         BottonCenter,
         BottomRight,
         BottomStretch,
     
         VertStretchLeft,
         VertStretchRight,
         VertStretchCenter,
     
         HorStretchTop,
         HorStretchMiddle,
         HorStretchBottom,
     
         StretchAll
     }
     
     public enum PivotPresets
     {
         TopLeft,
         TopCenter,
         TopRight,
     
         MiddleLeft,
         MiddleCenter,
         MiddleRight,
     
         BottomLeft,
         BottomCenter,
         BottomRight,
     }
     
     public static class RectTransformExtensions
     {
         public static void SetAnchor(this RectTransform source, AnchorPresets allign, int offsetX=0, int offsetY=0)
         {
             source.anchoredPosition = new Vector3(offsetX, offsetY, 0);
     
             switch (allign)
             {
                 case(AnchorPresets.TopLeft):
                 {
                     source.anchorMin = new Vector2(0, 1);
                     source.anchorMax = new Vector2(0, 1);
                     break;
                 }
                 case (AnchorPresets.TopCenter):
                 {
                     source.anchorMin = new Vector2(0.5f, 1);
                     source.anchorMax = new Vector2(0.5f, 1);
                     break;
                 }
                 case (AnchorPresets.TopRight):
                 {
                     source.anchorMin = new Vector2(1, 1);
                     source.anchorMax = new Vector2(1, 1);
                     break;
                 }
     
                 case (AnchorPresets.MiddleLeft):
                 {
                     source.anchorMin = new Vector2(0, 0.5f);
                     source.anchorMax = new Vector2(0, 0.5f);
                     break;
                 }
                 case (AnchorPresets.MiddleCenter):
                 {
                     source.anchorMin = new Vector2(0.5f, 0.5f);
                     source.anchorMax = new Vector2(0.5f, 0.5f);
                     break;
                 }
                 case (AnchorPresets.MiddleRight):
                 {
                     source.anchorMin = new Vector2(1, 0.5f);
                     source.anchorMax = new Vector2(1, 0.5f);
                     break;
                 }
     
                 case (AnchorPresets.BottomLeft):
                 {
                     source.anchorMin = new Vector2(0, 0);
                     source.anchorMax = new Vector2(0, 0);
                     break;
                 }
                 case (AnchorPresets.BottonCenter):
                 {
                     source.anchorMin = new Vector2(0.5f, 0);
                     source.anchorMax = new Vector2(0.5f,0);
                     break;
                 }
                 case (AnchorPresets.BottomRight):
                 {
                     source.anchorMin = new Vector2(1, 0);
                     source.anchorMax = new Vector2(1, 0);
                     break;
                 }
     
                 case (AnchorPresets.HorStretchTop):
                 {
                     source.anchorMin = new Vector2(0, 1);
                     source.anchorMax = new Vector2(1, 1);
                     break;
                 }
                 case (AnchorPresets.HorStretchMiddle):
                 {
                     source.anchorMin = new Vector2(0, 0.5f);
                     source.anchorMax = new Vector2(1, 0.5f);
                     break;
                 }
                 case (AnchorPresets.HorStretchBottom):
                 {
                     source.anchorMin = new Vector2(0, 0);
                     source.anchorMax = new Vector2(1, 0);
                     break;
                 }
     
                 case (AnchorPresets.VertStretchLeft):
                 {
                     source.anchorMin = new Vector2(0, 0);
                     source.anchorMax = new Vector2(0, 1);
                     break;
                 }
                 case (AnchorPresets.VertStretchCenter):
                 {
                     source.anchorMin = new Vector2(0.5f, 0);
                     source.anchorMax = new Vector2(0.5f, 1);
                     break;
                 }
                 case (AnchorPresets.VertStretchRight):
                 {
                     source.anchorMin = new Vector2(1, 0);
                     source.anchorMax = new Vector2(1, 1);
                     break;
                 }
     
                 case (AnchorPresets.StretchAll):
                 {
                     source.anchorMin = new Vector2(0, 0);
                     source.anchorMax = new Vector2(1, 1);
                     break;
                 }
             }
         }
     
         public static void SetPivot(this RectTransform source, PivotPresets preset)
         {
     
             switch (preset)
             {
                 case (PivotPresets.TopLeft):
                 {
                     source.pivot = new Vector2(0, 1);
                     break;
                 }
                 case (PivotPresets.TopCenter):
                 {
                     source.pivot = new Vector2(0.5f, 1);
                     break;
                 }
                 case (PivotPresets.TopRight):
                 {
                     source.pivot = new Vector2(1, 1);
                     break;
                 }
     
                 case (PivotPresets.MiddleLeft):
                 {
                     source.pivot = new Vector2(0, 0.5f);
                     break;
                 }
                 case (PivotPresets.MiddleCenter):
                 {
                     source.pivot = new Vector2(0.5f, 0.5f);
                     break;
                 }
                 case (PivotPresets.MiddleRight):
                 {
                     source.pivot = new Vector2(1, 0.5f);
                     break;
                 }
     
                 case (PivotPresets.BottomLeft):
                 {
                     source.pivot = new Vector2(0, 0);
                     break;
                 }
                 case (PivotPresets.BottomCenter):
                 {
                     source.pivot = new Vector2(0.5f, 0);
                     break;
                 }
                 case (PivotPresets.BottomRight):
                 {
                     source.pivot = new Vector2(1, 0);
                     break;
                 }
             }
         }
     }
    
    
     _ImgTransform.SetAnchor(AnchorPresets.TopRight);
     _ImgTransform.SetAnchor(AnchorPresets.TopRight,-10,-10);
     
     ImgTransform.SetPivot(PivotPresets.TopRight);
  • 相关阅读:
    通信架构
    通信架构
    17.2?Replication Implementation 复制实施:
    17.2?Replication Implementation 复制实施:
    17.1.1.8?Setting Up Replication with Existing Data设置复制使用存在的数据
    17.1.1.8?Setting Up Replication with Existing Data设置复制使用存在的数据
    17.1.1.7 Setting Up Replication with New Master and Slaves 设置复制对于新的Master和Slaves:
    Hi3531用SPI FLASH启动 使用Nand做文件系统 分类: HI3531 2013-08-28 10:26 884人阅读 评论(0) 收藏
    Hi3531支持2GByte内存 分类: HI3531 2013-08-28 10:25 738人阅读 评论(0) 收藏
    Hi3531添加16GByte(128Gbit) NAND Flash支持 分类: HI3531 2013-08-28 10:23 861人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/sanyejun/p/10956469.html
Copyright © 2011-2022 走看看