日韩 亚洲一区二_久久vs国产综合色大全_国产精品福利在线_欧美在线一级A片免费观看欧美在线_女同性毛片60分钟

您ç°åœ¨æ‰€åœ¨çš„ä½ç½®ï¼šé¦–页 >å…³äºå¥‡é…· > è¡Œä¸šåŠ¨æ€ > éƒå·unity3d培训 UGUIé•¿æŒ‰ç›æµ‹çš„ä¸¤ç§æ–¹æ³•

éƒå·unity3d培训 UGUIé•¿æŒ‰ç›æµ‹çš„ä¸¤ç§æ–¹æ³•

æ¥æºï¼šå¥‡é…·æ•™è‚² å表äºï¼š

éƒå·unity3d培训 UGUIé•¿æŒ‰ç›æµ‹çš„ä¸¤ç§æ–¹æ³•,奇酷(www qikuedu com)è€å¸ˆæ€»ç»ä¸¤ç§åŠæ³•如下: 简å•çš„demo,éšä¾¿å»ºå‡ ä¸ªUI,把

        éƒå·unity3d培训 UGUIé•¿æŒ‰ç›æµ‹çš„ä¸¤ç§æ–¹æ³•,奇酷(www.qikuedu.com)è€å¸ˆæ€»ç»ä¸¤ç§åŠæ³•如下:
        简å•çš„demo,éšä¾¿å»ºå‡ ä¸ªUI,把脚本拖到任æ„物ä½ï¼ŒæŒ‰1ç§éŸå有ååºäº‹ä»¶ã€‚以下脚本å¯é¿å…ScrollView失效,以åŠé‡å UIç©¿é€é€‰æ‹©ã€‚
éƒå·unity3d培训,Z†·ŸVR1VJ" src="http://uploadfile.qikuedu.com/2019/0319/20190319110022305.jpg" style="width: 480px; height: 270px;" />
方法一:使ç¨EventSystems,适åˆåœºæ™¯ä¸­ç®€å•çš„UIæä½œ
using UnityEngine;
using UnityEngine.EventSystems;
 
public class RyanPressTest : MonoBehaviour {
        Vector3 lastMousePose;
    EventSystem m_EventSystem;
        float curT = 0;
        // 是å¦å·²ç»è¢«é€‰æ‹©
        bool isPressed = false;
        void Start(){
        m_EventSystem = FindObjectOfType();
        }
        void Update () {
                if(Input.GetMouseButtonDown(0)){
                        lastMousePose = Input.mousePosition;
                }
        if (Input.GetMouseButton(0) && !isPressed && lastMousePose == Input.mousePosition)
        {
                        curT += Time.deltaTime;
                        // 长按1ç§
                        if(curT >= 1f){
                    Debug.Log(m_EventSystem.currentSelectedGameObject + " was pressed.");
                                isPressed = true;
                        }
        }
                if(Input.GetMouseButtonUp(0)){
                        isPressed = false;
                        curT = 0;
                }
        }
}
 
方法二:使ç¨å°„线,适ç¨äºé¼ æ ‡ä¸€ä¸‹é€‰æ‹©å¤šä¸ªUIçš„å¤æ‚场景
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
 
public class RyanPressTest : MonoBehaviour {
        Vector3 lastMousePose;
    GraphicRaycaster m_Raycaster;
    PointerEventData m_PointerEventData;
        float curT = 0;
        // 是å¦å·²ç»è¢«é€‰æ‹©
        bool isPressed = false;
        void Start(){
        m_Raycaster = FindObjectOfType ();
        }
        void Update () {
                if(Input.GetMouseButtonDown(0)){
                        lastMousePose = Input.mousePosition;
                }
        if (Input.GetMouseButton(0) && !isPressed && lastMousePose == Input.mousePosition)
        {
                        curT += Time.deltaTime;
            m_PointerEventData = new PointerEventData(null);
                        m_PointerEventData.position = lastMousePose;
 
            List results = new List();
            m_Raycaster.Raycast(m_PointerEventData, results);
                        // 长按1ç§
                        if(results.Count > 0 && curT >= 1f){
                                // 彿œ‰å¤šä¸ªé‡å UI,results会è¿å›æ‰€æœ‰è¢«å°„线穿é€çš„UI数组,一般æˆä»¬åªéœ€è¦æœ€ä¸Šé¢çš„那个UI
                    Debug.Log(results[0].gameObject + " was pressed.");
                                isPressed = true;
                        }
        }
                if(Input.GetMouseButtonUp(0)){
                        isPressed = false;
                        curT = 0;
                }
        }
}
 
å…¶å®EventTriggerä¹Ÿèƒ½ç›æµ‹é•¿æŒ‰ï¼Œä½†ç¨äº†å®ƒScrollView就失效了,还是ç¨ä¸Šé¢ä¸¤ç§æ–¹æ³•æ¯è¾ƒé€šã€‚