{"id":2450,"date":"2021-03-07T02:32:08","date_gmt":"2021-03-06T18:32:08","guid":{"rendered":"https:\/\/www.clonefactor.com\/wordpress\/?p=2450"},"modified":"2021-03-07T02:59:32","modified_gmt":"2021-03-06T18:59:32","slug":"unity3d-ui-anchors-to-corners","status":"publish","type":"post","link":"https:\/\/www.clonefactor.com\/wordpress\/program\/unity3d\/devlog\/2450\/","title":{"rendered":"Unity3D UI, Anchors to Corners"},"content":{"rendered":"\n<p>Anchors to Corners \u7684\u6548\u679c\u6703\u4ee4 UGUI \u7684 RectTransform \u4f9d\u4e0a\u5c64\u7684\u7e2e\u653e\u6bd4\u4f8b\u5c0d\u9f4a.<br>\u800c\u4e14\u662f\u4ee5\u5716\u7247\u73fe\u5728\u7684\u4f4d\u7f6e\u4f5c\u70ba\u53c3\u8003\u81ea\u52d5\u9032\u884c.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"965\" height=\"538\" src=\"https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2021\/03\/Anchors_to_Corners_z.gif\" alt=\"\" class=\"wp-image-2451\"\/><\/figure>\n\n\n\n<p>\u5982\u4e0a\u5716\u6548\u679c, \u5c0d\u9f4a\u5de6\u4e0a\u89d2\u7684\u6703\u5b8c\u5168\u812b\u96e2, \u800c\u4f9d Anchors To Corners \u7684\u5247\u5b8c\u7f8e\u7e2e\u653e.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"711\" height=\"575\" src=\"https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2021\/03\/Anchors_to_corners_2.jpg\" alt=\"\" class=\"wp-image-2452\" srcset=\"https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2021\/03\/Anchors_to_corners_2.jpg 711w, https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2021\/03\/Anchors_to_corners_2-300x243.jpg 300w, https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2021\/03\/Anchors_to_corners_2-359x290.jpg 359w\" sizes=\"auto, (max-width: 711px) 100vw, 711px\" \/><\/figure>\n\n\n\n<p>\u628a Anchor (\u4e09\u89d2) \u5b8c\u7f8e\u91cd\u758a\u5230 Corner (\u85cd\u9ede) \u5c31\u6703\u9054\u6210\u9019\u5b8c\u7f8e\u7684\u7b49\u6bd4\u4f8b\u7e2e\u653e.<br>\u7531\u65bc Unity \u6c92\u6709\u63d0\u4f9b\u6307\u4ee4, \u6240\u4ee5\u5beb\u6210\u6307\u4ee4\u597d\u50cf\u6bd4\u8f03\u597d\u7528.<br>\u672c script \u4ee5 <strong>Ctrl + T<\/strong>, \u5373 %t \u4f5c\u70ba Hotkey.<br>\u7576\u7136\u628a\u8981\u653e\u9032 &#8220;Editor&#8221; \u6a94\u6848\u593e\u5167.<br>\u53c3\u8003 : <a rel=\"noreferrer noopener\" href=\"http:\/\/forum.unity3d.com\/threads\/scripts-useful-4-6-scripts-collection.264161\/?_ga=2.244486401.583712110.1615051159-1416679152.1573397245\" target=\"_blank\">http:\/\/forum.unity3d.com\/threads\/scripts-useful-4-6-scripts-collection.264161\/?_ga=2.244486401.583712110.1615051159-1416679152.1573397245<\/a><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">using System.Collections;\nusing System.Collections.Generic;\nusing UnityEngine;\nusing UnityEditor;\nnamespace Kit\n{\n    public class RectTransformScripts : EditorWindow\n    {\n        \/\/\/ &lt;summary>\n        \/\/\/ &lt;see cref=\"http:\/\/forum.unity3d.com\/threads\/scripts-useful-4-6-scripts-collection.264161\/?_ga=2.244486401.583712110.1615051159-1416679152.1573397245\"\/>\n        \/\/\/ &lt;\/summary>\n        [MenuItem(\"Kit\/UI Kit\/Anchors to Corners %t\")]\n        private static void AnchorsToCorners()\n        {\n            if (Selection.gameObjects.Length > 0)\n            {\n                Transform[] transforms = Selection.transforms;\n                int cnt = 0;\n                int nameCnt = Mathf.Min(cnt, 20);\n                string uiNames = \"\";\n                foreach (Transform transform in transforms)\n                {\n                    if (transform is RectTransform rectTransform &amp;&amp;\n                        rectTransform.parent is RectTransform parent)\n                    {\n                        Vector2 newAnchorsMin = new Vector2(rectTransform.anchorMin.x + rectTransform.offsetMin.x \/ parent.rect.width,\n                                                            rectTransform.anchorMin.y + rectTransform.offsetMin.y \/ parent.rect.height);\n                        Vector2 newAnchorsMax = new Vector2(rectTransform.anchorMax.x + rectTransform.offsetMax.x \/ parent.rect.width,\n                                                            rectTransform.anchorMax.y + rectTransform.offsetMax.y \/ parent.rect.height);\n\n                        rectTransform.anchorMin = newAnchorsMin;\n                        rectTransform.anchorMax = newAnchorsMax;\n                        rectTransform.offsetMin = rectTransform.offsetMax = Vector2.zero;\n                        cnt++;\n                        if (nameCnt > 0)\n                        {\n                            nameCnt--;\n                            uiNames += \",\" + rectTransform.name;\n                        }\n                    }\n                }\n                Debug.Log($\"UI: Anchors To Corners : {cnt}\\n>>{uiNames}\");\n            }\n        }\n    }\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Anchors to Corners \u7684\u6548\u679c\u6703\u4ee4 UGUI \u7684 RectTransform \u4f9d\u4e0a\u5c64\u7684 &hellip;<\/p>\n","protected":false},"author":1,"featured_media":2452,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[106],"tags":[114,122],"class_list":["post-2450","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devlog","tag-hack","tag-ui"],"_links":{"self":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts\/2450","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/comments?post=2450"}],"version-history":[{"count":3,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts\/2450\/revisions"}],"predecessor-version":[{"id":2455,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/posts\/2450\/revisions\/2455"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/media\/2452"}],"wp:attachment":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/media?parent=2450"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/categories?post=2450"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/tags?post=2450"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}