Browse Source

一些较小按钮才会有选中提示

lvjincheng 3 years ago
parent
commit
56ba8abd80

+ 14 - 0
Assets/BowArrow/Scripts/Expand/SB_EventSystem/MouseConfirm/MouseConfirm.cs

@@ -37,6 +37,20 @@ public class MouseConfirm : MonoBehaviour
         if (_targetSelectable) {
         if (_targetSelectable) {
             if (!_prepared) {
             if (!_prepared) {
                 _prepared = true;
                 _prepared = true;
+
+                RectTransform rtf = _targetSelectable.transform as RectTransform;
+                Vector3 size = rtf.rect.size;
+                if (size.x == 0 || size.y == 0) {
+                    Hide();
+                    return;
+                } 
+                Vector3 maxSize = RectTransformUtils.CanvasV3ToScreenV3(Vector3.one * 120, transform as RectTransform); 
+                size = RectTransformUtils.CanvasV3ToScreenV3(size, rtf);
+                if (size.x > maxSize.x || size.y > maxSize.y) {
+                    Hide();
+                    return;
+                }
+        
                 btnConfirm.transform.position = RectTransformUtils.GetPositionByPivot(_targetSelectable.transform as RectTransform, Vector2.one * 0.5f);
                 btnConfirm.transform.position = RectTransformUtils.GetPositionByPivot(_targetSelectable.transform as RectTransform, Vector2.one * 0.5f);
                 btnConfirm.gameObject.SetActive(true);
                 btnConfirm.gameObject.SetActive(true);
                 GetComponent<Canvas>().sortingOrder = _targetSelectable.GetComponentInParent<Canvas>().sortingOrder + 1;
                 GetComponent<Canvas>().sortingOrder = _targetSelectable.GetComponentInParent<Canvas>().sortingOrder + 1;