float GetContentSize(UIElement mod, ChatData data) { data.conSize = HTextGenerator.GetPreferredSize(new StringEx(data.content, settings.richText), ref settings); float y = data.conSize.y; y += 60; if (y < 120) { y = 120; } mod.SizeDelta = new Vector2(600, y); var box = mod.Find("box"); box.SizeDelta = new Vector2(data.conSize.x + 10, data.conSize.y + 10); box.GetChild(0).SizeDelta = data.conSize; UIElement.ResizeChild(mod); return(y); }
void OnSubmit(InputBox input) { string str = input.InputString; if (str == "") { return; } switch (opt) { case "left": ChatData chat = new ChatData(); chat.name = "江海胡"; chat.content = str; settings.textAnchor = TextAnchor.UpperLeft; chat.conSize = HTextGenerator.GetPreferredSize(new StringEx(str, settings.richText), ref settings); other.AddAndMove(chat, chat.conSize.y + 10); break; case "center": TipData t = new TipData(); str = DateTime.Now.ToString(); t.content = str; tip.AddAndMove(t, 30); break; case "right": chat = new ChatData(); chat.name = "胡强"; chat.content = str; settings.textAnchor = TextAnchor.UpperRight; chat.conSize = HTextGenerator.GetPreferredSize(new StringEx(str, settings.richText), ref settings); self.AddAndMove(chat, chat.conSize.y + 10); break; } input.InputString = ""; }