月度存档: 12 月 2023

UGUI真机上图片丢失的问题

看此处:https://docs.unity.cn/cn/2021.1/ScriptReference/U2D.SpriteAtlasManager-atlasRequested.html

SpriteAtlasManager.atlasRequested

描述

在任何 Sprite 绑定到 SpriteAtlas 但无法在运行时找到图集资源时触发。

这通常意味着精灵被打包到了一个未包含在编译版本中的图集内

此回调不期望用户的立即响应。相反,它传递一个 System.Action。用户可以在日后加载图集对象,并使用此 System.Action 传回加载后的图集。 using UnityEngine; using UnityEngine.U2D;

public class AtlasLoader : MonoBehaviour { void OnEnable() { SpriteAtlasManager.atlasRequested += RequestAtlas; }

void OnDisable() { SpriteAtlasManager.atlasRequested -= RequestAtlas; }

void RequestAtlas(string tag, System.Action<SpriteAtlas> callback) { var sa = Resources.Load<SpriteAtlas>(tag); callback(sa); } }

另请参阅:U2D.SpriteAtlasManager.RequestAtlasCallback。

UGUI检测当前是否点中UI

UGUI判断当前是否有点中UI

<code>    // true:当前点中了UI
    public static bool IsTouchOnUI()
    {
        //check mouse PC平台检测鼠标
        if (EventSystem.current.IsPointerOverGameObject())
        {
            return true;
        }

        //check touch 手机检测每个touch
        if (Input.touchCount > 0 &amp;&amp; Input.touches&#91;0].phase == TouchPhase.Began)
        {
            if (EventSystem.current.IsPointerOverGameObject(Input.touches&#91;0].fingerId))
            {
                return true;
            }
        }

        return false;
    }</code>