public static void AddInputField(MenuCommand menuCommand) { GameObject inputFieldGO = DefaultControls.CreateInputField(GetStandardResources()); InputField inputField = inputFieldGO.GetComponent <InputField>(); var textChild = inputFieldGO.transform.FindChild("Text").gameObject; var text = textChild.GetComponent <Text>(); Object.DestroyImmediate(text); UnivText unvText = textChild.AddComponent <UnivText>(); unvText.text = ""; unvText.color = Color.black; unvText.supportRichText = false; inputField.textComponent = unvText; var placeholderChild = inputFieldGO.transform.FindChild("Placeholder").gameObject; var placeholderText = placeholderChild.GetComponent <Text>(); Object.DestroyImmediate(placeholderText); UnivText placeholderUnvText = placeholderChild.AddComponent <UnivText>(); placeholderUnvText.text = "הכנס טקסט..."; placeholderUnvText.fontStyle = FontStyle.Italic; // Make placeholder color half as opaque as normal text color. Color placeholderColor = unvText.color; placeholderColor.a *= 0.5f; placeholderUnvText.color = placeholderColor; inputField.placeholder = placeholderUnvText; PlaceUIElementRoot(inputFieldGO, menuCommand); }
public static InputField CreateInputField(string objectName = "New Input Field", Transform parent = null, string placeholder = "Placeholder...") { GameObject go = DefaultControls.CreateInputField(resources); go.name = objectName; var texts = go.GetComponentsInChildren <Text>(true); for (var i = 0; i < texts.Length; i++) { Text text = texts[i]; text.font = defaultFont; text.resizeTextForBestFit = true; text.resizeTextMinSize = 2; text.resizeTextMaxSize = 100; text.alignment = TextAnchor.MiddleLeft; text.rectTransform.offsetMin = new Vector2(5f, 2f); text.rectTransform.offsetMax = new Vector2(-5f, -2f); } go.transform.SetParent(parent, false); InputField f = go.GetComponent <InputField>(); f.placeholder.GetComponent <Text>().text = placeholder; return(f); }
public static GameObject CreateInputField(Transform aParent) { var go = DefaultControls.CreateInputField(GetStandardResources()); go.transform.SetParent(aParent); return(go); }
public static void AddInputField(MenuCommand menuCommand) { GameObject go; using (new FactorySwapToEditor()) go = DefaultControls.CreateInputField(MenuOptions.GetStandardResources()); MenuOptions.PlaceUIElementRoot(go, menuCommand); }
public static void Init(UIPaletteBlockSelect palette) { blockPalette = palette; var inputFieldGo = DefaultControls.CreateInputField(new DefaultControls.Resources() { inputField = Options_Unticked }); inputField = inputFieldGo.GetComponent <InputField>(); inputField.onValueChanged.AddListener(OnTextChanged); foreach (var text in inputFieldGo.GetComponentsInChildren <Text>()) { text.text = ""; text.alignment = TextAnchor.MiddleLeft; text.font = ExoRegular; text.fontSize = 20; text.fontStyle = FontStyle.Normal; text.color = Color.white; text.lineSpacing = 1; } inputField.placeholder.enabled = true; var placeholderText = inputField.placeholder.GetComponent <Text>(); placeholderText.fontStyle = FontStyle.Italic; placeholderText.text = "Block name"; inputField.transform.SetParent(blockPalette.transform.Find("HUD_BlockPainting_BG"), false); var rect = inputFieldGo.GetComponent <RectTransform>(); rect.pivot = rect.anchorMax = rect.anchorMin = new Vector2(1, 1); rect.anchoredPosition3D = new Vector3(-5, -5, 77); rect.sizeDelta = new Vector2(210, 40); var scrollviewRect = blockPalette.transform.Find("HUD_BlockPainting_BG/Scroll View") as RectTransform; var anchoredPosition3D = scrollviewRect.anchoredPosition3D; anchoredPosition3D.y -= 40; scrollviewRect.anchoredPosition3D = anchoredPosition3D; var sizeDelta = scrollviewRect.sizeDelta; sizeDelta.y -= 40; scrollviewRect.sizeDelta = sizeDelta; var scrollbarRect = blockPalette.transform.Find("HUD_BlockPainting_BG/Scrollbar") as RectTransform; anchoredPosition3D = scrollbarRect.anchoredPosition3D; anchoredPosition3D.y -= 40; scrollbarRect.anchoredPosition3D = anchoredPosition3D; sizeDelta = scrollbarRect.sizeDelta; sizeDelta.y -= 40; scrollbarRect.sizeDelta = sizeDelta; inputFieldRect = rect; Singleton.Manager <ManGameMode> .inst.ModeSwitchEvent.Subscribe(OnModeChange); }
public static void CreateTextPlusInput() { //GameObject root = new GameObject("Text", typeof(RectTransform), typeof(Image),typeof(InputField)); GameObject root = DefaultControls.CreateInputField(GetStandardResources()); ResetInCanvasFor((RectTransform)root.transform); Transform textTran = root.transform.Find("Text"); Object.DestroyImmediate(textTran.gameObject.GetComponent <Text>()); var text = textTran.gameObject.AddComponent <TextPlus>(); text.supportRichText = false; text.color = Color.black; root.GetComponent <InputField>().textComponent = text; root.transform.localPosition = Vector3.zero; Selection.activeGameObject = root; }
public static void CreateInputFieldVariable() { GameObject canvas = CreateSceneObject.GetCanvasGameObject(); GameObject inputGO = DefaultControls.CreateInputField(CreateSceneObject.GetStandardResources()); inputGO.transform.SetParent(canvas.transform, false); InputField input = inputGO.GetComponent <InputField>(); Graphic targetGraphic = input.targetGraphic; Graphic placeholderComponent = input.placeholder; Text textComponent = input.textComponent; DestroyImmediate(input); input = inputGO.AddComponent <InputFieldVariable>(); input.targetGraphic = targetGraphic; input.placeholder = placeholderComponent; input.textComponent = textComponent; Selection.activeGameObject = inputGO; }
public static int CreateInputField_s(IntPtr l) { int result; try { DefaultControls.Resources resources; LuaObject.checkValueType <DefaultControls.Resources>(l, 1, out resources); GameObject o = DefaultControls.CreateInputField(resources); LuaObject.pushValue(l, true); LuaObject.pushValue(l, o); result = 2; } catch (Exception e) { result = LuaObject.error(l, e); } return(result); }
public static void CreateSliderMixInput() { GameObject parent = Selection.activeGameObject; RectTransform mix = new GameObject("SliderMixInput").AddComponent <RectTransform>(); mix.SetParent(parent.transform); mix.anchoredPosition = Vector2.zero; mix.sizeDelta = new Vector2(210, 25); // 设置Text RectTransform text = DefaultControls.CreateText(GetStandardResources()).GetComponent <RectTransform>(); text.SetParent(mix); text.name = "Name"; text.anchorMin = new Vector2(0, 0.5f); text.anchorMax = new Vector2(0, 0.5f); text.sizeDelta = new Vector2(50, 25); text.anchoredPosition = new Vector2(25, 0); text.GetComponent <Text>().text = "Name"; text.GetComponent <Text>().alignment = TextAnchor.MiddleCenter; // 设置滑动条 RectTransform slider = DefaultControls.CreateSlider(GetStandardResources()).GetComponent <RectTransform>(); slider.SetParent(mix); slider.sizeDelta = new Vector2(80, 20); slider.anchoredPosition = new Vector2(-15, 0); // 设置输入框 RectTransform input = DefaultControls.CreateInputField(GetStandardResources()).GetComponent <RectTransform>(); input.SetParent(mix); input.anchorMin = new Vector2(1, 0.5f); input.anchorMax = new Vector2(1, 0.5f); input.sizeDelta = new Vector2(80, 20); input.anchoredPosition = new Vector2(-40, 0); mix.gameObject.AddComponent <XFramework.UI.SliderMixInput>(); }
private void CreateTextField(int x, int y) { Perdedor.SetActive(false); Ganador.SetActive(true); DefaultControls.Resources uiResources = new DefaultControls.Resources(); GameObject uiInputField = DefaultControls.CreateInputField(uiResources); uiInputField.transform.SetParent(canvas_transform, false); //uiInputField.transform.GetChild(0).GetComponent<Text>().font = (Font)Resources.GetBuiltinResource(typeof(Font), "BlackoakStd.ttf"); uiInputField.transform.GetChild(0).GetComponent <Text>().font = scoreFont; uiInputField.transform.GetChild(1).GetComponent <Text>().font = scoreFont; uiInputField.transform.GetChild(0).GetComponent <Text>().text = "___"; uiInputField.transform.GetChild(0).GetComponent <Text>().fontSize = 8; uiInputField.transform.GetChild(1).GetComponent <Text>().fontSize = 15; InputField input = uiInputField.GetComponent <InputField>(); input.characterLimit = 3; RectTransform trans = uiInputField.GetComponent <RectTransform>(); trans.anchoredPosition = new Vector2(x, y - 5); trans.sizeDelta = new Vector2(150, 60); input.onValueChanged.AddListener(delegate { ValueChangeCheck(input); }); //ColorBlock cb = input.colors; //cb.highlightedColor = new Color(0f, 0f, 0f, 0f); //input.colors = cb; Image image = uiInputField.GetComponent <Image>(); image.color = new Color(0f, 0f, 0f, 0f); input.Select(); }
public static void AddInputField(MenuCommand menuCommand) { GameObject go = DefaultControls.CreateInputField(GetStandardResources()); PlaceUIElementRoot(go, menuCommand); var Placeholder = go.transform.Find("Placeholder").GetComponent <Text>(); Placeholder.supportRichText = CustomizeUGUICreate.IsRich; Placeholder.raycastTarget = CustomizeUGUICreate.IsRayCastTarget; Placeholder.material = CustomizeUGUICreate.GetDefalutMaterial(Placeholder.gameObject) ? CustomizeUGUICreate.GetDefalutMaterial(Placeholder.gameObject) : Placeholder.material; var Text = go.transform.Find("Text").GetComponent <Text>(); Text.supportRichText = CustomizeUGUICreate.IsRich; Text.raycastTarget = CustomizeUGUICreate.IsRayCastTarget; Text.material = CustomizeUGUICreate.GetDefalutMaterial(Text.gameObject) ? CustomizeUGUICreate.GetDefalutMaterial(Text.gameObject): Text.material; var goImage = go.GetComponent <Image>(); goImage.sprite = CustomizeUGUICreate.GetDefalutSprite(goImage.gameObject) ? CustomizeUGUICreate.GetDefalutSprite(goImage.gameObject) : goImage.sprite; goImage.material = CustomizeUGUICreate.GetDefalutMaterial(goImage.gameObject)? CustomizeUGUICreate.GetDefalutMaterial(goImage.gameObject) : goImage.material; }
/// <summary> /// Create Color Picker /// </summary> /// <param name="resources"></param> /// <returns></returns> public static GameObject CreateColorPicker(Resources resources) { GameObject colorPicker = CreateUIElementRoot("ColorPicker", _defaultColorPicker); var mainCT = colorPicker.AddComponent <ColoredTape>(); mainCT.TapeDirection = ColoredTape.E_DrawDirection.Vertical; mainCT.SetColors(new Color[] { new Color(0.8f, 0.8f, 0.8f, 1), new Color(0, 0.7f, 1, 1) }); #region 主色板 //MainColor 主色板 var mainColor = CreateUIObject("MainColor", colorPicker.transform, new Vector2(185, 22)).AddComponent <MainColorTape>().gameObject.transform; mainColor.localPosition = new Vector3(16.2f, 188.2f); #endregion #region 吸管 //Sucker 吸管 var sucker = CreateUIObject("ColorSucker", colorPicker.transform, new Vector2(22, 22)); sucker.AddComponent <SuckerImage>(); sucker.AddComponent <Button>(); sucker.transform.localPosition = new Vector3(-95.6f, 186.8f); sucker.transform.localEulerAngles = new Vector3(0, 0, 321.0f); #endregion #region 调色板 //Color Palette 调色板 var colorPalette = CreateUIObject("ColorPalette", colorPicker.transform, new Vector2(150, 150)); colorPalette.AddComponent <ColorPalette>(); colorPalette.transform.localPosition = new Vector3(-11.5f, 75); //第一层色带 var firstCTGO = CreateUIObject("FirstLayerColoredTape", colorPalette.transform, new Vector2(150, 150)); var fisrtCT = firstCTGO.AddComponent <ColoredTape>(); fisrtCT.TapeDirection = ColoredTape.E_DrawDirection.Horizontal;; fisrtCT.OuelineWidth = 0.8f; fisrtCT.SetColors(new Color[] { Color.white, Color.red }); //第二层色带 var secondCTGO = CreateUIObject("SecondLayerColoredTape", colorPalette.transform, new Vector2(150, 150)); var secondCT = secondCTGO.AddComponent <ColoredTape>(); secondCT.Outline = false; secondCT.SetColors(new Color[] { new Color(0, 0, 0, 0), Color.black }); //多色色带 var multiCTGO = CreateUIObject("MultiColoredTape", colorPalette.transform, new Vector2(150, 150)); var multiCT = multiCTGO.AddComponent <MultiColoredTape>(); multiCT.OuelineWidth = 0.8f; multiCT.SetColors(new Color[] { Color.yellow, Color.white, Color.red, Color.magenta }); multiCTGO.SetActive(false); //左侧文字 var leftText = DefaultControls.CreateText(convertToDefaultResources(resources)); leftText.name = "LeftText"; leftText.GetComponent <Text>().alignment = TextAnchor.MiddleCenter; leftText.GetComponent <Text>().fontSize = 10; leftText.GetComponent <Text>().text = "Brightness"; leftText.transform.SetParent(colorPalette.transform); leftText.GetComponent <RectTransform>().sizeDelta = new Vector2(143.6f, 17.1f); leftText.transform.localPosition = new Vector3(-86.17f, 1.7f); leftText.transform.localEulerAngles = new Vector3(0, 0, 90); //底部文字 var bottomtText = DefaultControls.CreateText(convertToDefaultResources(resources)); bottomtText.name = "BottomText"; bottomtText.GetComponent <Text>().alignment = TextAnchor.MiddleCenter; bottomtText.GetComponent <Text>().fontSize = 10; bottomtText.GetComponent <Text>().text = "Saturation"; bottomtText.transform.SetParent(colorPalette.transform); bottomtText.GetComponent <RectTransform>().sizeDelta = new Vector2(143.6f, 17.1f); bottomtText.transform.localPosition = new Vector3(0, -87.0f); //右侧文字 var rightText = DefaultControls.CreateText(convertToDefaultResources(resources)); rightText.name = "RightText"; rightText.GetComponent <Text>().alignment = TextAnchor.MiddleCenter; rightText.GetComponent <Text>().fontSize = 10; rightText.GetComponent <Text>().text = "Hue"; rightText.transform.SetParent(colorPalette.transform); rightText.GetComponent <RectTransform>().sizeDelta = new Vector2(143.6f, 17.1f); rightText.transform.localPosition = new Vector3(115.64f, 0); rightText.transform.localEulerAngles = new Vector3(0, 0, -90); //游标 var nonius = CreateUIObject("ColorNonius", colorPalette.transform, new Vector2(10, 10)); nonius.AddComponent <ColorNonius>(); nonius.transform.localPosition = new Vector3(-75, 75); #endregion #region 颜色拾取功能 // SuckScreen 截屏 var suckScreen = CreateUIObject("SuckScreen", colorPicker.transform, new Vector2(160, 160)); suckScreen.transform.localPosition = new Vector3(0, 75); // Texture 截图纹理 var screenTex = CreateUIObject("Texture", suckScreen.transform, new Vector2(160, 160)); screenTex.AddComponent <Image>(); // Mesh 创建网格 var mesh = CreateUIObject("Mesh", suckScreen.transform, new Vector2(160, 160)); var imageMesh = mesh.AddComponent <ImageMesh>(); imageMesh.XAxisCount = 16; imageMesh.YAxisCount = 16; imageMesh.LineWidth = 1; imageMesh.Color = Color.gray; imageMesh.FocusColor = Color.red; imageMesh.FocuslineWidth = 1; suckScreen.SetActive(false); #endregion #region 垂直滑动条 //ColoredTape Slider 垂直滑动条 var verticalSlider = CreateUIObject("ColoredTapeSlider", colorPicker.transform, new Vector2(20, 150)); verticalSlider.transform.localPosition = new Vector2(80, 75); var vSlider = verticalSlider.AddComponent <Slider>(); vSlider.direction = Slider.Direction.TopToBottom; vSlider.value = 0; // firstCT var verticaCT = CreateUIObject("FirstLayerColoredTape", verticalSlider.transform, new Vector2(20, 150)); var vCT = verticaCT.AddComponent <ColoredTape>(); vCT.OuelineWidth = 0.8f; vCT.SetColors(new Color[] { Color.red, Color.magenta, Color.blue, Color.cyan, Color.green, Color.yellow, Color.red }); // handle slider area var handleArea = CreateUIObject("Handle Slider Area", verticalSlider.transform, new Vector2(0, 0)); var handleAreaRect = handleArea.GetComponent <RectTransform>(); handleAreaRect.anchorMin = Vector2.zero; handleAreaRect.anchorMax = Vector2.one; var handle = CreateUIObject("Handle", handleArea.transform, new Vector2(20, 20)); var handleRect = handle.GetComponent <RectTransform>(); handleRect.anchorMin = new Vector2(0, 1); handleRect.anchorMax = new Vector2(1, 1); var sh = handle.AddComponent <SliderHandler>(); sh.arrowSize = 5; sh.distance = 10; vSlider.targetGraphic = handle.GetComponent <SliderHandler>(); vSlider.handleRect = handle.GetComponent <RectTransform>(); #endregion #region 调色板模式按钮 // Palette Mode Button 调色板模式按钮 var pmButton = CreateUIObject("PaletteModeButton", colorPicker.transform, new Vector2(12, 9)); pmButton.transform.localPosition = new Vector3(102.7f, 164.2f); var pmButtonTarget = CreateUIObject("Target", pmButton.transform, new Vector2(12, 9)); pmButtonTarget.AddComponent <Image>(); pmButton.AddComponent <Button>().targetGraphic = pmButtonTarget.GetComponent <Image>(); var targetContent = CreateUIObject("GameObject", pmButtonTarget.transform, new Vector2(9, 9)); targetContent.transform.localPosition = new Vector3(-1.5f, 0); var indexCT1 = CreateUIObject("CT1", targetContent.transform, new Vector2(9, 9)); var indexct = indexCT1.AddComponent <ColoredTape>(); indexct.TapeDirection = ColoredTape.E_DrawDirection.Horizontal; indexct.SetColors(new Color[] { Color.white, new Color(0.6f, 0, 0.6f, 1) }); var indexCT2 = CreateUIObject("CT2", targetContent.transform, new Vector2(9, 9)); indexCT2.AddComponent <ColoredTape>().SetColors(new Color[] { new Color(1, 1, 1, 0), new Color(0, 0, 0, 1) }); var indexCT = CreateUIObject("CT", pmButtonTarget.transform, new Vector2(3, 9)); indexCT.transform.localPosition = new Vector2(4.5f, 0); indexCT.AddComponent <ColoredTape>().SetColors(new Color[] { Color.red, Color.magenta, Color.blue, Color.cyan, Color.green, Color.yellow, Color.red }); #endregion #region 颜色模式按钮 // Color Mode Button 颜色模式按钮 var cmButton = CreateUIObject("ColorModeButton", colorPicker.transform, new Vector2(9, 9)); cmButton.transform.localPosition = new Vector3(102.7f, -15); var cmButtonTarget = CreateUIObject("Target", cmButton.transform, new Vector2(9, 9)); cmButtonTarget.AddComponent <Image>(); cmButton.AddComponent <Button>().targetGraphic = cmButtonTarget.GetComponent <Image>(); var hCT1 = CreateUIObject("CT1", cmButtonTarget.transform, new Vector2(9, 3)); hCT1.transform.localPosition = new Vector3(0, 3); var ct1 = hCT1.AddComponent <ColoredTape>(); ct1.TapeDirection = ColoredTape.E_DrawDirection.Horizontal; ct1.SetColors(new Color[] { Color.red, Color.magenta, Color.blue, Color.cyan, Color.green, Color.yellow, Color.red }); var hCT2 = CreateUIObject("CT2", cmButtonTarget.transform, new Vector2(9, 3)); var ct2 = hCT2.AddComponent <ColoredTape>(); ct2.TapeDirection = ColoredTape.E_DrawDirection.Horizontal; ct2.SetColors(new Color[] { Color.white, new Color(0.6f, 0, 0.6f) }); var hCT3 = CreateUIObject("CT3", cmButtonTarget.transform, new Vector2(9, 3)); hCT3.transform.localPosition = new Vector3(0, -3); var ct3 = hCT3.AddComponent <ColoredTape>(); ct3.TapeDirection = ColoredTape.E_DrawDirection.Horizontal; ct3.SetColors(new Color[] { Color.black, Color.white }); #endregion #region RGBA Inputfield && slider RGBA四通道 // var rgba = CreateUIObject("RGBA", colorPicker.transform, new Vector2(216, 112)); rgba.transform.localPosition = new Vector3(0, -80); var glg = rgba.AddComponent <GridLayoutGroup>(); glg.cellSize = new Vector2(216, 28); // R var rModule = CreateUIObject("R", rgba.transform, new Vector2(216, 28)); var rText = CreateUIObject("Text", rModule.transform, new Vector2(18.3f, 28)); rText.transform.localPosition = new Vector3(-94.6f, 0); rText.AddComponent <Text>().text = "R"; rText.GetComponent <Text>().color = new Color(0.2f, 0.2f, 0.2f, 1); rText.GetComponent <Text>().alignment = TextAnchor.MiddleLeft; var rValue = DefaultControls.CreateInputField(convertToDefaultResources(resources)); rValue.GetComponent <RectTransform>().sizeDelta = new Vector2(27.4f, 20); rValue.transform.SetParent(rModule.transform); rValue.transform.localPosition = new Vector3(94.3f, 0); rValue.name = "Value"; rValue.GetComponent <InputField>().text = "255"; rValue.transform.Find("Text").GetComponent <Text>().fontSize = 12; rValue.transform.Find("Text").GetComponent <Text>().alignment = TextAnchor.MiddleCenter; var rRect = rValue.transform.Find("Text").GetComponent <RectTransform>(); rRect.sizeDelta = new Vector2(27.4f, 20); rRect.anchorMin = Vector2.zero; rRect.anchorMax = Vector2.one; var rSlider = createColoredTapeSlider(rModule.transform, new Color[] { Color.cyan, Color.white }); rSlider.name = "Slider"; // G var gModule = CreateUIObject("G", rgba.transform, new Vector2(216, 28)); var gText = CreateUIObject("Text", gModule.transform, new Vector2(18.3f, 28)); gText.transform.localPosition = new Vector3(-94.6f, 0); gText.AddComponent <Text>().text = "G"; gText.GetComponent <Text>().color = new Color(0.2f, 0.2f, 0.2f, 1); gText.GetComponent <Text>().alignment = TextAnchor.MiddleLeft; var gValue = DefaultControls.CreateInputField(convertToDefaultResources(resources)); gValue.GetComponent <RectTransform>().sizeDelta = new Vector2(27.4f, 20); gValue.transform.SetParent(gModule.transform); gValue.transform.localPosition = new Vector3(94.3f, 0); gValue.name = "Value"; gValue.GetComponent <InputField>().text = "255"; gValue.transform.Find("Text").GetComponent <Text>().fontSize = 12; gValue.transform.Find("Text").GetComponent <Text>().alignment = TextAnchor.MiddleCenter; var gRect = gValue.transform.Find("Text").GetComponent <RectTransform>(); gRect.sizeDelta = new Vector2(27.4f, 20); gRect.anchorMin = Vector2.zero; gRect.anchorMax = Vector2.one; var gSlider = createColoredTapeSlider(gModule.transform, new Color[] { Color.magenta, Color.white }); gSlider.name = "Slider"; // B var bModule = CreateUIObject("B", rgba.transform, new Vector2(216, 28)); var bText = CreateUIObject("Text", bModule.transform, new Vector2(18.3f, 28)); bText.transform.localPosition = new Vector3(-94.6f, 0); bText.AddComponent <Text>().text = "B"; bText.GetComponent <Text>().color = new Color(0.2f, 0.2f, 0.2f, 1); bText.GetComponent <Text>().alignment = TextAnchor.MiddleLeft; var bValue = DefaultControls.CreateInputField(convertToDefaultResources(resources)); bValue.GetComponent <RectTransform>().sizeDelta = new Vector2(27.4f, 20); bValue.transform.SetParent(bModule.transform); bValue.transform.localPosition = new Vector3(94.3f, 0); bValue.name = "Value"; bValue.GetComponent <InputField>().text = "255"; bValue.transform.Find("Text").GetComponent <Text>().fontSize = 12; bValue.transform.Find("Text").GetComponent <Text>().alignment = TextAnchor.MiddleCenter; var bRect = bValue.transform.Find("Text").GetComponent <RectTransform>(); bRect.sizeDelta = new Vector2(27.4f, 20); bRect.anchorMin = Vector2.zero; bRect.anchorMax = Vector2.one; var bSlider = createColoredTapeSlider(bModule.transform, new Color[] { Color.yellow, Color.white }); bSlider.name = "Slider"; // A var aModule = CreateUIObject("A", rgba.transform, new Vector2(216, 28)); var aText = CreateUIObject("Text", aModule.transform, new Vector2(18.3f, 28)); aText.transform.localPosition = new Vector3(-94.6f, 0); aText.AddComponent <Text>().text = "A"; aText.GetComponent <Text>().color = new Color(0.2f, 0.2f, 0.2f, 1); aText.GetComponent <Text>().alignment = TextAnchor.MiddleLeft; var aValue = DefaultControls.CreateInputField(convertToDefaultResources(resources)); aValue.GetComponent <RectTransform>().sizeDelta = new Vector2(27.4f, 20); aValue.transform.SetParent(aModule.transform); aValue.transform.localPosition = new Vector3(94.3f, 0); aValue.name = "Value"; aValue.GetComponent <InputField>().text = "255"; aValue.transform.Find("Text").GetComponent <Text>().fontSize = 12; aValue.transform.Find("Text").GetComponent <Text>().alignment = TextAnchor.MiddleCenter; var aRect = aValue.transform.Find("Text").GetComponent <RectTransform>(); aRect.sizeDelta = new Vector2(27.4f, 20); aRect.anchorMin = Vector2.zero; aRect.anchorMax = Vector2.one; var aSlider = createColoredTapeSlider(aModule.transform, new Color[] { Color.black, Color.white }); aSlider.name = "Slider"; #endregion #region 十六进制 // 十六进制显示输入 var hexColor = CreateUIObject("HexColor", colorPicker.transform, new Vector2(216, 25)); hexColor.transform.localPosition = new Vector2(2, -154.5f); // 创建文字 var hexText = CreateUIObject("Text", hexColor.transform, new Vector2(137.7f, 24)); hexText.transform.localPosition = new Vector3(-36.8f, 0); var text = hexText.AddComponent <Text>(); text.fontSize = 14; text.alignment = TextAnchor.MiddleLeft; text.text = "HexColor #"; text.color = new Color(0.2f, 0.2f, 0.2f, 1); // 输入框 var hexInput = DefaultControls.CreateInputField(convertToDefaultResources(resources)); hexInput.name = "Value"; hexInput.transform.SetParent(hexColor.transform); hexInput.GetComponent <RectTransform>().sizeDelta = new Vector2(76.9f, 25); hexInput.transform.localPosition = new Vector3(66.85f, 0); hexInput.GetComponent <InputField>().text = "FFFFFFFF"; var textRect = hexInput.transform.Find("Text").GetComponent <RectTransform>(); textRect.sizeDelta = new Vector2(76.9f, 25); textRect.anchorMin = Vector2.zero; textRect.anchorMax = Vector2.one; textRect.GetComponent <Text>().alignment = TextAnchor.MiddleCenter; #endregion #region 预制色模块 // 预制色按钮 var presets = CreateUIObject("Presets", colorPicker.transform, new Vector2(220, 40)); presets.transform.localPosition = new Vector3(0, -190.5f); var presetsText = CreateUIObject("Text", presets.transform, new Vector2(154.4f, 20)); presetsText.transform.localPosition = new Vector3(-27.3f, 10); presetsText.AddComponent <Text>().text = "Presets"; presetsText.GetComponent <Text>().alignment = TextAnchor.MiddleLeft; presetsText.GetComponent <Text>().color = new Color(0.2f, 0.2f, 0.2f, 1); // 预制色Colors var colors = CreateUIObject("Colors", presets.transform, new Vector2(214.5f, 12)); colors.transform.localPosition = new Vector3(2.75f, -10); colors.AddComponent <GridLayoutGroup>().cellSize = new Vector2(12, 12); colors.GetComponent <GridLayoutGroup>().spacing = new Vector2(0, 1); // 预制色模板 var colorTamplate = CreateUIObject("ColorItemTamplate", colors.transform, new Vector2(12, 12)); colorTamplate.AddComponent <Image>(); colorTamplate.AddComponent <Button>(); colorTamplate.AddComponent <Outline>(); colorTamplate.SetActive(false); // 添加按钮 var addButton = DefaultControls.CreateButton(convertToDefaultResources(resources)); addButton.name = "AddButton"; addButton.transform.SetParent(colors.transform); //GameObject.Destroy(addButton.transform.FindChild("Text").gameObject); #endregion return(colorPicker); }
void OnGUI() { scrollPos = EditorGUILayout.BeginScrollView(scrollPos); if (GUILayout.Button("小图Image")) { var go = DefaultControls.CreateImage(Res); ToScene(go); } if (GUILayout.Button("大图RawImage")) { var go = DefaultControls.CreateRawImage(Res); ToScene(go); } GUILayout.Space(5); GUILayout.Space(5); if (GUILayout.Button("文字按钮")) { AddButtonWithText(); } GUILayout.Space(5); if (GUILayout.Button("图片按钮")) { AddImageButton(); } GUILayout.Space(5); GUILayout.Space(5); if (GUILayout.Button("进度条")) { var go = DefaultControls.CreateSlider(Res); ToScene(go); } GUILayout.Space(5); if (GUILayout.Button("输入框")) { var go = DefaultControls.CreateInputField(Res); ToScene(go); } GUILayout.Space(5); if (GUILayout.Button("单选框")) { var go = DefaultControls.CreateToggle(Res); ToScene(go); } GUILayout.Space(5); if (GUILayout.Button("Tab页")) { AddTab(); } GUILayout.Space(5); GUILayout.Space(5); if (GUILayout.Button("横向滚动列表")) { AddTableView(TableView.Direction.Horizontal); } if (GUILayout.Button("竖向滚动列表")) { AddTableView(TableView.Direction.Vertical); } EditorGUILayout.EndScrollView(); }
//[MenuItem("GameObject/UI/Input Field", false, 2036)] public static void AddInputField(MenuCommand menuCommand) { GameObject go = DefaultControls.CreateInputField(GetStandardResources()); PlaceUIElementRoot(go, menuCommand); }
static UIElements() { OptionEntryPrefab = GameObject.Instantiate(CheckboxOption_PauseOnFocusLost); var EntryText = OptionEntryPrefab.transform.Find("Text").gameObject; EntryText.GetComponent <Text>().text = "Option Entry"; GameObject.DestroyImmediate(EntryText.GetComponent <UILocalisedText>()); for (var i = 0; i < OptionEntryPrefab.transform.childCount; i++) { var child = OptionEntryPrefab.transform.GetChild(i).gameObject; if (child != EntryText) { GameObject.DestroyImmediate(child); } } InputFieldOption_Prefab = UIElements.CreateOptionEntry("", "InputFieldOption_Prefab"); var InputFieldOption_PrefabRect = InputFieldOption_Prefab.GetComponent <RectTransform>(); var InputFieldOption_PrefabBehaviourInputField = InputFieldOption_Prefab.AddComponent <UIOptionsBehaviourInputField>(); var InputFieldOption_Prefab_InputField = DefaultControls.CreateInputField(new DefaultControls.Resources() { inputField = UIElements.Options_Unticked }); var InputFieldOption_Prefab_InputFieldInputField = InputFieldOption_Prefab_InputField.GetComponent <InputField>(); typeof(UIOptionsBehaviourInputField).GetField("m_Target", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic).SetValue(InputFieldOption_PrefabBehaviourInputField, InputFieldOption_Prefab_InputFieldInputField); InputFieldOption_Prefab_InputFieldInputField.transition = Selectable.Transition.None; InputFieldOption_Prefab_InputFieldInputField.navigation = new Navigation() { mode = Navigation.Mode.None }; var InputFieldOption_Prefab_InputFieldRect = InputFieldOption_Prefab_InputField.GetComponent <RectTransform>(); InputFieldOption_Prefab_InputFieldRect.anchoredPosition3D = new Vector3(174f, 0, 0); InputFieldOption_Prefab_InputFieldRect.sizeDelta = new Vector2(202f, 30f); var InputFieldOption_Prefab_InputField_Placeholder = InputFieldOption_Prefab_InputField.transform.Find("Placeholder").gameObject; var InputFieldOption_Prefab_InputField_PlaceholderRect = InputFieldOption_Prefab_InputField_Placeholder.GetComponent <RectTransform>(); var InputFieldOption_Prefab_InputField_PlaceholderText = InputFieldOption_Prefab_InputField_Placeholder.GetComponent <Text>(); InputFieldOption_Prefab_InputField_PlaceholderText.text = ""; InputFieldOption_Prefab_InputField_PlaceholderText.alignment = TextAnchor.MiddleLeft; InputFieldOption_Prefab_InputField_PlaceholderText.font = UIElements.ExoRegular; InputFieldOption_Prefab_InputField_PlaceholderText.fontSize = 14; InputFieldOption_Prefab_InputField_PlaceholderText.fontStyle = FontStyle.Normal; InputFieldOption_Prefab_InputField_PlaceholderText.color = Color.white; InputFieldOption_Prefab_InputField_PlaceholderText.lineSpacing = 1; var InputFieldOption_Prefab_InputField_Text = InputFieldOption_Prefab_InputField.transform.Find("Text").gameObject; var InputFieldOption_Prefab_InputField_TextRect = InputFieldOption_Prefab_InputField_Text.GetComponent <RectTransform>(); var InputFieldOption_Prefab_InputField_TextText = InputFieldOption_Prefab_InputField_Text.GetComponent <Text>(); InputFieldOption_Prefab_InputField_TextText.text = ""; InputFieldOption_Prefab_InputField_TextText.alignment = TextAnchor.MiddleLeft; InputFieldOption_Prefab_InputField_TextText.font = UIElements.ExoRegular; InputFieldOption_Prefab_InputField_TextText.fontSize = 14; InputFieldOption_Prefab_InputField_TextText.fontStyle = FontStyle.Normal; InputFieldOption_Prefab_InputField_TextText.color = Color.white; InputFieldOption_Prefab_InputField_TextText.lineSpacing = 1; InputFieldOption_Prefab_InputField.transform.SetParent(InputFieldOption_Prefab.transform, false); if (Pre1481) { KeyOption_Prefab = GameObject.Instantiate(KeybindingPrefab_TurnCamera); KeyOption_Prefab.SetActive(true); var KeybindEntryText = KeyOption_Prefab.transform.Find("Text").gameObject; GameObject.DestroyImmediate(KeybindEntryText.GetComponent <UILocalisedText>()); KeybindEntryText.GetComponent <Text>().text = ""; var KeybindButton1 = KeyOption_Prefab.transform.Find("Buttons Panel/Button").gameObject; KeybindButton1.GetComponent <Button>().interactable = true; /*var KeybindButton2 = KeybindingPrefab_TurnCamera.transform.Find("Buttons Panel/Button (2)").gameObject; * KeybindButton2.SetActive(true); * KeybindButton2.GetComponent<Button>().interactable = true;*/ CategoryPrefab = GameObjects.First(f => f.name.StartsWith("_EmptySpace_ (1)")); } else { Controls_KeybindingOption_FireWeapons = GameObjects.First(f => f.name == "Controls_KeybindingOption FireWeapons"); UIElements.KeyOption_Prefab = GameObject.Instantiate(Controls_KeybindingOption_FireWeapons.transform.Find("FirstRow (1)").gameObject); var rect = KeyOption_Prefab.GetComponent <RectTransform>(); rect.pivot = Vector2.up; rect.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, 590f); rect.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, 50f); GameObject.DestroyImmediate(KeyOption_Prefab.transform.Find("AxisName").GetComponent <UILocalisedText>()); GameObject.DestroyImmediate(KeyOption_Prefab.transform.Find("Name").gameObject); GameObject.DestroyImmediate(KeyOption_Prefab.transform.Find("AxisDescription").gameObject); var btn1 = KeyOption_Prefab.transform.Find("ButtonPos1").gameObject; var btn1Rect = btn1.GetComponent <RectTransform>(); btn1Rect.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Right, btn1Rect.sizeDelta.x, btn1Rect.sizeDelta.x); GameObject.DestroyImmediate(btn1.GetComponent <UIKeyBindButton>()); btn1.GetComponent <Button>().onClick.RemoveAllListeners(); btn1.SetActive(false); var btn2 = KeyOption_Prefab.transform.Find("ButtonPos2"); var btn2Rect = btn2.GetComponent <RectTransform>(); btn2Rect.pivot = btn2Rect.anchorMin = btn2Rect.anchorMax = new Vector2(1, 0.5f); btn2Rect.anchoredPosition3D = Vector3.zero; btn2Rect.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Right, 0, btn2Rect.sizeDelta.x); btn2.GetComponent <Button>().onClick.RemoveAllListeners(); GameObject.DestroyImmediate(btn2.GetComponent <UIKeyBindButton>()); CategoryPrefab = GameObject.Instantiate(GameObjects.First(f => f.name == "Heading_Movement")); var catRect = CategoryPrefab.GetComponent <RectTransform>(); catRect.sizeDelta = new Vector2(590f, 50f); GameObject.DestroyImmediate(CategoryPrefab.GetComponentInChildren <UILocalisedText>()); } SliderOption_Prefab = GameObject.Instantiate(SliderOption_HorizontalSensivity); var SliderOption_Prefab_Text = SliderOption_Prefab.transform.Find("Text"); GameObject.DestroyImmediate(SliderOption_Prefab_Text.GetComponent <UILocalisedText>()); var SliderOption_Prefab_TextText = SliderOption_Prefab_Text.GetComponent <Text>(); SliderOption_Prefab_TextText.fontSize = 15; SliderOption_Prefab_TextText.font = UIElements.ExoSemiBold; SliderOption_Prefab_TextText.enabled = true; SliderOption_Prefab_TextText.resizeTextMaxSize = 15; SliderOption_Prefab_TextText.resizeTextMinSize = 1; DropdownOption_Prefab = GameObject.Instantiate(DropdownOption_Language); var DropdownOption_Prefab_Text = DropdownOption_Prefab.transform.Find("Text"); GameObject.DestroyImmediate(DropdownOption_Prefab_Text.GetComponent <UILocalisedText>()); DropdownOption_Prefab.GetComponentInChildren <Dropdown>().ClearOptions(); CheckboxOption_Prefab = GameObject.Instantiate(CheckboxOption_PauseOnFocusLost); var CheckboxOption_Prefab_Text = CheckboxOption_Prefab.transform.Find("Text"); GameObject.DestroyImmediate(CheckboxOption_Prefab_Text.GetComponent <UILocalisedText>()); }