Fix AspectRatioLayoutElement min axis length.

This commit is contained in:
2022-10-08 14:27:51 +08:00
parent 5fb135bfa5
commit 7bf7291ae8
2 changed files with 4 additions and 11 deletions

View File

@@ -31,9 +31,7 @@ namespace Cryville.Common.Unity.UI {
public float minWidth {
get {
return m_isVertical
? (transform as RectTransform).rect.width
: (transform as RectTransform).rect.height * m_aspectRatio;
return m_isVertical ? 0 : (transform as RectTransform).rect.height * m_aspectRatio;
}
}
public float preferredWidth { get { return minWidth; } }
@@ -41,9 +39,7 @@ namespace Cryville.Common.Unity.UI {
public float minHeight {
get {
return m_isVertical
? (transform as RectTransform).rect.width / m_aspectRatio
: (transform as RectTransform).rect.height;
return m_isVertical ? (transform as RectTransform).rect.width / m_aspectRatio : 0;
}
}
public float preferredHeight { get { return minHeight; } }
@@ -61,7 +57,7 @@ namespace Cryville.Common.Unity.UI {
}
protected override void OnDisable() {
LayoutRebuilder.MarkLayoutForRebuild(transform as RectTransform);
SetDirty();
base.OnDisable();
}
@@ -80,10 +76,8 @@ namespace Cryville.Common.Unity.UI {
SetDirty();
}
#pragma warning disable IDE0051
new void OnValidate() {
protected override void OnValidate() {
SetDirty();
}
#pragma warning restore IDE0051
}
}

View File

@@ -1,5 +1,4 @@
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
namespace Cryville.Common.Unity.UI {