[optimize][tooltip] support background image

This commit is contained in:
monitor1394
2022-04-29 15:54:47 +08:00
parent 8c02ce14ac
commit 96b0ec45d2
3 changed files with 10 additions and 0 deletions

View File

@@ -27,6 +27,7 @@ namespace XCharts.Editor
PropertyField("m_PaddingLeftRight"); PropertyField("m_PaddingLeftRight");
PropertyField("m_PaddingTopBottom"); PropertyField("m_PaddingTopBottom");
PropertyField("m_BackgroundImage"); PropertyField("m_BackgroundImage");
PropertyField("m_BackgroundType");
PropertyField("m_BackgroundColor"); PropertyField("m_BackgroundColor");
PropertyField("m_FixedWidth"); PropertyField("m_FixedWidth");
PropertyField("m_FixedHeight"); PropertyField("m_FixedHeight");

View File

@@ -81,6 +81,7 @@ namespace XCharts.Runtime
[SerializeField] private bool m_AlwayShowContent = false; [SerializeField] private bool m_AlwayShowContent = false;
[SerializeField] private Vector2 m_Offset = new Vector2(18f, -25f); [SerializeField] private Vector2 m_Offset = new Vector2(18f, -25f);
[SerializeField] private Sprite m_BackgroundImage; [SerializeField] private Sprite m_BackgroundImage;
[SerializeField] private Image.Type m_BackgroundType = Image.Type.Simple;
[SerializeField] private Color m_BackgroundColor; [SerializeField] private Color m_BackgroundColor;
[SerializeField] private float m_BorderWidth = 2f; [SerializeField] private float m_BorderWidth = 2f;
[SerializeField] private bool m_FixedXEnable = false; [SerializeField] private bool m_FixedXEnable = false;
@@ -241,6 +242,11 @@ namespace XCharts.Runtime
/// </summary> /// </summary>
public Sprite backgroundImage { get { return m_BackgroundImage; } set { m_BackgroundImage = value; SetComponentDirty(); } } public Sprite backgroundImage { get { return m_BackgroundImage; } set { m_BackgroundImage = value; SetComponentDirty(); } }
/// <summary> /// <summary>
/// The background type of tooltip.
/// |提示框的背景图片显示类型。
/// </summary>
public Image.Type backgroundType { get { return m_BackgroundType; } set { m_BackgroundType = value; SetComponentDirty(); } }
/// <summary>
/// The background color of tooltip. /// The background color of tooltip.
/// |提示框的背景颜色。 /// |提示框的背景颜色。
/// </summary> /// </summary>

View File

@@ -218,11 +218,14 @@ namespace XCharts.Runtime
view.transform = view.gameObject.transform; view.transform = view.gameObject.transform;
view.background = ChartHelper.GetOrAddComponent<Image>(view.gameObject); view.background = ChartHelper.GetOrAddComponent<Image>(view.gameObject);
view.background.sprite = tooltip.backgroundImage;
view.background.type = tooltip.backgroundType;
view.background.color = ChartHelper.IsClearColor(tooltip.backgroundColor) view.background.color = ChartHelper.IsClearColor(tooltip.backgroundColor)
? Color.white : tooltip.backgroundColor; ? Color.white : tooltip.backgroundColor;
view.border = ChartHelper.GetOrAddComponent<Outline>(view.gameObject); view.border = ChartHelper.GetOrAddComponent<Outline>(view.gameObject);
view.border.enabled = tooltip.borderWidth > 0; view.border.enabled = tooltip.borderWidth > 0;
view.border.useGraphicAlpha = false;
view.border.effectColor = tooltip.borderColor; view.border.effectColor = tooltip.borderColor;
view.border.effectDistance = new Vector2(tooltip.borderWidth, -tooltip.borderWidth); view.border.effectDistance = new Vector2(tooltip.borderWidth, -tooltip.borderWidth);