1. using UnityEngine;
  2.  
  3. public enum AnchorPresets
  4. {
  5. TopLeft,
  6. TopCenter,
  7. TopRight,
  8.  
  9. MiddleLeft,
  10. MiddleCenter,
  11. MiddleRight,
  12.  
  13. BottomLeft,
  14. BottonCenter,
  15. BottomRight,
  16. BottomStretch,
  17.  
  18. VertStretchLeft,
  19. VertStretchRight,
  20. VertStretchCenter,
  21.  
  22. HorStretchTop,
  23. HorStretchMiddle,
  24. HorStretchBottom,
  25.  
  26. StretchAll
  27. }
  28.  
  29. public enum PivotPresets
  30. {
  31. TopLeft,
  32. TopCenter,
  33. TopRight,
  34.  
  35. MiddleLeft,
  36. MiddleCenter,
  37. MiddleRight,
  38.  
  39. BottomLeft,
  40. BottomCenter,
  41. BottomRight,
  42. }
  43.  
  44. public static class RectTransformExtensions
  45. {
  46. public static void SetAnchor(this RectTransform source, AnchorPresets allign, int offsetX=, int offsetY=)
  47. {
  48. source.anchoredPosition = new Vector3(offsetX, offsetY, );
  49.  
  50. switch (allign)
  51. {
  52. case(AnchorPresets.TopLeft):
  53. {
  54. source.anchorMin = new Vector2(, );
  55. source.anchorMax = new Vector2(, );
  56. break;
  57. }
  58. case (AnchorPresets.TopCenter):
  59. {
  60. source.anchorMin = new Vector2(0.5f, );
  61. source.anchorMax = new Vector2(0.5f, );
  62. break;
  63. }
  64. case (AnchorPresets.TopRight):
  65. {
  66. source.anchorMin = new Vector2(, );
  67. source.anchorMax = new Vector2(, );
  68. break;
  69. }
  70.  
  71. case (AnchorPresets.MiddleLeft):
  72. {
  73. source.anchorMin = new Vector2(, 0.5f);
  74. source.anchorMax = new Vector2(, 0.5f);
  75. break;
  76. }
  77. case (AnchorPresets.MiddleCenter):
  78. {
  79. source.anchorMin = new Vector2(0.5f, 0.5f);
  80. source.anchorMax = new Vector2(0.5f, 0.5f);
  81. break;
  82. }
  83. case (AnchorPresets.MiddleRight):
  84. {
  85. source.anchorMin = new Vector2(, 0.5f);
  86. source.anchorMax = new Vector2(, 0.5f);
  87. break;
  88. }
  89.  
  90. case (AnchorPresets.BottomLeft):
  91. {
  92. source.anchorMin = new Vector2(, );
  93. source.anchorMax = new Vector2(, );
  94. break;
  95. }
  96. case (AnchorPresets.BottonCenter):
  97. {
  98. source.anchorMin = new Vector2(0.5f, );
  99. source.anchorMax = new Vector2(0.5f,);
  100. break;
  101. }
  102. case (AnchorPresets.BottomRight):
  103. {
  104. source.anchorMin = new Vector2(, );
  105. source.anchorMax = new Vector2(, );
  106. break;
  107. }
  108.  
  109. case (AnchorPresets.HorStretchTop):
  110. {
  111. source.anchorMin = new Vector2(, );
  112. source.anchorMax = new Vector2(, );
  113. break;
  114. }
  115. case (AnchorPresets.HorStretchMiddle):
  116. {
  117. source.anchorMin = new Vector2(, 0.5f);
  118. source.anchorMax = new Vector2(, 0.5f);
  119. break;
  120. }
  121. case (AnchorPresets.HorStretchBottom):
  122. {
  123. source.anchorMin = new Vector2(, );
  124. source.anchorMax = new Vector2(, );
  125. break;
  126. }
  127.  
  128. case (AnchorPresets.VertStretchLeft):
  129. {
  130. source.anchorMin = new Vector2(, );
  131. source.anchorMax = new Vector2(, );
  132. break;
  133. }
  134. case (AnchorPresets.VertStretchCenter):
  135. {
  136. source.anchorMin = new Vector2(0.5f, );
  137. source.anchorMax = new Vector2(0.5f, );
  138. break;
  139. }
  140. case (AnchorPresets.VertStretchRight):
  141. {
  142. source.anchorMin = new Vector2(, );
  143. source.anchorMax = new Vector2(, );
  144. break;
  145. }
  146.  
  147. case (AnchorPresets.StretchAll):
  148. {
  149. source.anchorMin = new Vector2(, );
  150. source.anchorMax = new Vector2(, );
  151. break;
  152. }
  153. }
  154. }
  155.  
  156. public static void SetPivot(this RectTransform source, PivotPresets preset)
  157. {
  158.  
  159. switch (preset)
  160. {
  161. case (PivotPresets.TopLeft):
  162. {
  163. source.pivot = new Vector2(, );
  164. break;
  165. }
  166. case (PivotPresets.TopCenter):
  167. {
  168. source.pivot = new Vector2(0.5f, );
  169. break;
  170. }
  171. case (PivotPresets.TopRight):
  172. {
  173. source.pivot = new Vector2(, );
  174. break;
  175. }
  176.  
  177. case (PivotPresets.MiddleLeft):
  178. {
  179. source.pivot = new Vector2(, 0.5f);
  180. break;
  181. }
  182. case (PivotPresets.MiddleCenter):
  183. {
  184. source.pivot = new Vector2(0.5f, 0.5f);
  185. break;
  186. }
  187. case (PivotPresets.MiddleRight):
  188. {
  189. source.pivot = new Vector2(, 0.5f);
  190. break;
  191. }
  192.  
  193. case (PivotPresets.BottomLeft):
  194. {
  195. source.pivot = new Vector2(, );
  196. break;
  197. }
  198. case (PivotPresets.BottomCenter):
  199. {
  200. source.pivot = new Vector2(0.5f, );
  201. break;
  202. }
  203. case (PivotPresets.BottomRight):
  204. {
  205. source.pivot = new Vector2(, );
  206. break;
  207. }
  208. }
  209. }
  210. }
  211.  
  212. _ImgTransform.SetAnchor(AnchorPresets.TopRight);
  213. _ImgTransform.SetAnchor(AnchorPresets.TopRight,-,-);
  214.  
  215. ImgTransform.SetPivot(PivotPresets.TopRight);

ugui代码设置ui锚点的更多相关文章

  1. 使用XML文件和Java代码控制UI界面

    Android推荐使用XML文件设置UI界面,然后用Java代码控制逻辑部分,这体现了MVC思想. MVC全名是Model View Controller,是模型(model)-视图(view)-控制 ...

  2. Android学习笔记(9):使用XML文件和Java代码控制UI界面

    Android推荐使用XML文件设置UI界面.然后用Java代码控制逻辑部分,这体现了MVC思想. MVC全名是Model View Controller.是模型(model)-视图(view)-控制 ...

  3. Unity 用代码设置UGUI的渲染层级

    用代码设置UGUI渲染无非和三个API有关: 1.SetAsFirstSibling(); 2.SetAsLastSibling(); 3.SetSiblingIndex(n) SetAsFirstS ...

  4. 【转】代码控制UI,View

    [转]Android 步步为营 第5营 代码控制UI,View   http://www.cnblogs.com/vivid-stanley/archive/2012/08/22/2651399.ht ...

  5. android 后台代码设置动画

    1.设置旋转动画 final RotateAnimation animation =new RotateAnimation(0f,360f,Animation.RELATIVE_TO_SELF, 0. ...

  6. 一行代码设置TForm颜色的前世今生(属性赋值引起函数调用,然后发消息实现改变显示效果),TForm的初始颜色在dfm中设置了clBtnFace色

    来自万一的帖子:http://www.cnblogs.com/del/archive/2008/04/27/1173658.html的确做到了一行代码设置TForm控件的颜色(一点感想:Delphi程 ...

  7. 通过代码设置button中文字的对齐方式

    // button.titleLabel.textAlignment = NSTextAlignmentLeft; 这句无效 button.contentHorizontalAlignment = U ...

  8. cxf客户端代码设置设置访问用户名、密码、证书域名不匹配认证通过

    最近和第三方联调,需要调用对方的wsdl,但是调用必须的设置用户名.密码验证.在soapUI里面设置用户名.密码调用通过.但是怎么转换成JAVA代码呢,搜索了好多解决方案,现将代码截图如下: 1.SO ...

  9. 代码设置layout_weight attribute

    代码设置 LinearLayout权重比例之小结: 如果在LinearLayout添加子View,那么只有一个View的时候设置所占的比例一定要设置LinearLayout总weightsum.不然会 ...

随机推荐

  1. visual studio 2013 生成依赖项关系图出错

    开始是说无法连接到sql服务器,我安装卸载localdb http://www.microsoft.com/zh-cn/download/details.aspx?id=29062 下载 CHS\x6 ...

  2. 长沙理工大学第十二届ACM大赛-重现赛C 安卓图案解锁 (模拟)

    链接:https://ac.nowcoder.com/acm/contest/1/C来源:牛客网 安卓图案解锁 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言 ...

  3. macOS安装wget

    brew install wget 或者 curl -O http://ftp.gnu.org/gnu/wget/wget-1.13.4.tar.gz tar xzvf wget-1.13.4.tar ...

  4. 《SaltStack技术入门与实践》—— Job管理

    Job管理 本章节参考<SaltStack技术入门与实践>,感谢该书作者: 刘继伟.沈灿.赵舜东 在SaltStack里面执行任何一个操作都会在Master上产生一个jid号.Minion ...

  5. springboot自定义错误页

    静态错误页放在         动态可以放在freemaker或者thymeleaf         匹配规则: 先找动态页面再找静态页面 先找精确错误页面再找模糊页面     注:精确错误页面=50 ...

  6. B/S上传文件夹

    文件夹数据库处理逻辑 publicclass DbFolder { JSONObject root; public DbFolder() { this.root = new JSONObject(); ...

  7. Wannafly挑战赛16 #E 弹球弹弹弹 splay+基环树+各种思维

    链接:https://ac.nowcoder.com/acm/problem/16033来源:牛客网 有n个位置,标号为1到n的整数,m次操作,第i次操作放置一个弹球在b[i] xor c[i-1]处 ...

  8. HDU 6153 A Secret ( KMP&&DP || 拓展KMP )

    题意 : 给出两个字符串,现在需要求一个和sum,考虑第二个字符串的所有后缀,每个后缀对于这个sum的贡献是这个后缀在第一个字符串出现的次数*后缀的长度,最后输出的答案应当是 sum % 1e9+7 ...

  9. 果蝇优化算法(FOA)

    果蝇优化算法(FOA) 果蝇优化算法(Fruit Fly Optimization Algorithm, FOA)是基于果蝇觅食行为的仿生学原理而提出的一种新兴群体智能优化算法. 果蝇优化算法(FOA ...

  10. (22)Python练习项目集

    文本操作 逆转字符串——输入一个字符串,将其逆转并输出. 拉丁猪文字游戏——这是一个英语语言游戏.基本规则是将一个英语单词的第一个辅音音素的字母移动到词尾并且加上后缀-ay(譬如“banana”会变成 ...