游戏蛮牛学习群(纯技术交流,不闲聊):539178957
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2259

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 1360|回复: 38

[码农亚] UGUI的IPointerEnterHandler事件与IPointerExitHandler事件分离控制同一个功能块,方法解决

[复制链接]  [移动端链接]
排名
4147
昨日变化
3

8

主题

97

帖子

749

积分

Rank: 9Rank: 9Rank: 9

UID
251813
好友
3
蛮牛币
1530
威望
0
注册时间
2017-10-31
在线时间
316 小时
最后登录
2018-7-18

专栏作家活力之星

发表于 2018-6-18 16:19:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 码农亚 于 2018-6-18 16:19 编辑

01 奇奇怪怪需求: UGUI的IPointerEnterHandler事件与IPointerExitHandler事件分离控制同一个功能块。
02 大家一看标题可能会很迷糊,我打算用文字来说明情况。
  鼠标进入父物体,父物体一侧弹出两个子物体,然后我们可以点击两个子物体来进行相关的操作,但是当鼠标离开子物体和父物体后,子物体消失。
03 如下截图[size=18.6667px]

关系示例图

关系示例图


[size=18.6667px]04 这类触发效果的图片不好截取,所以就截取一个效果图。
[size=18.6667px]

效果图

效果图


[size=18.6667px]注: 因为截图需要鼠标进行重新绘制,所以图片中鼠标选中的状态没有,就这样。
[size=18.6667px]05 我把相应的Debug内容简单输出到屏幕进行显示,这是宋哥当初指导的,发出来顺便让大家也可以借用方法查看Debug报错输出。
[size=18.6667px]PS :感觉貌似字数不够,就简单的把我的一段脚本代码发出来吧。
[size=18.6667px]
[C#] 纯文本查看 复制代码
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using System.Collections.Generic;
//Time :: 180615
public class ScreenCenterManager : MonoBehaviour
{
    public GameObject _mainTarget;
    public bool raycasterExecute;
    string target1 = "双选项底";
    string target2 = "小型按钮块";
    // Use this for initialization
 
    // Update is called once per frame
    void Update()
    {
        if (raycasterExecute)
        {
            //ForTwoObjsRaycaster();
            OnePointColliderObject();
        }
    }
    public void OnePointColliderObject()
    {
        PointerEventData eventDataCurrentPosition = new PointerEventData(EventSystem.current);
        eventDataCurrentPosition.position = new Vector2(Input.mousePosition.x, Input.mousePosition.y);

        List<RaycastResult> results = new List<RaycastResult>();
        EventSystem.current.RaycastAll(eventDataCurrentPosition, results);

        if (results.Count > 0)
        {
            //Debug.Log(results[0].gameObject.name);
            for (int i = 0; i < results.Count; i++)
            {
                if (results[results.Count - 1].gameObject.name != target1 && results[results.Count - 1].gameObject.name != target2)
                {
                   //UI控制
                    _mainTarget.SetActive(false);
                    raycasterExecute = false;
                }
            }
        }
        //3D区域控制
        if ((!EventSystem.current.IsPointerOverGameObject()))
        {
            _mainTarget.SetActive(false);
            raycasterExecute = false;
        }
    }
    public void FirstMethod()
    {
        Debug.Log("方法1启动");
    }
    public void SecondMethod()
    {
        Debug.Log("方法2启动");
    }
}



[size=18.6667px]老规矩,下面就是项目内容
[size=18.6667px] RomanticCute07.rar (185.59 KB, 下载次数: 69, 售价: 1 蛮牛币)

回复

使用道具 举报

排名
60067
昨日变化
97

0

主题

3

帖子

5

积分

Rank: 1

UID
286289
好友
0
蛮牛币
0
威望
0
注册时间
2018-6-18
在线时间
0 小时
最后登录
2018-6-18
发表于 2018-6-18 22:01:57 | 显示全部楼层
厉害,这个代码对我很有帮助
[发帖际遇]: 159lll 捡了钱没交公 蛮牛币 降了 3 . 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

排名
60067
昨日变化
97

0

主题

3

帖子

5

积分

Rank: 1

UID
286289
好友
0
蛮牛币
0
威望
0
注册时间
2018-6-18
在线时间
0 小时
最后登录
2018-6-18
发表于 2018-6-18 22:03:04 | 显示全部楼层
厉害这个代码对我很有帮助
[发帖际遇]: 159lll 发帖时在路边捡到 2 蛮牛币,偷偷放进了口袋. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

排名
60067
昨日变化
97

0

主题

7

帖子

9

积分

Rank: 1

UID
286241
好友
0
蛮牛币
1
威望
0
注册时间
2018-6-18
在线时间
0 小时
最后登录
2018-6-18
发表于 2018-6-18 22:23:33 | 显示全部楼层
感謝拉   知識又增長了

回复 支持 反对

使用道具 举报

4四处流浪
471/500
排名
7453
昨日变化
67

0

主题

216

帖子

471

积分

Rank: 4

UID
279508
好友
0
蛮牛币
918
威望
0
注册时间
2018-5-2
在线时间
101 小时
最后登录
2018-7-18
发表于 2018-6-19 08:44:47 | 显示全部楼层
好东西,感谢分享

回复

使用道具 举报

5熟悉之中
504/1000
排名
5630
昨日变化
4

2

主题

140

帖子

504

积分

Rank: 5Rank: 5

UID
252889
好友
1
蛮牛币
1750
威望
0
注册时间
2017-11-6
在线时间
142 小时
最后登录
2018-7-13
QQ
发表于 2018-6-19 09:00:56 | 显示全部楼层

回复

使用道具 举报

4四处流浪
408/500
排名
7914
昨日变化
89

2

主题

162

帖子

408

积分

Rank: 4

UID
277168
好友
0
蛮牛币
1525
威望
0
注册时间
2018-4-14
在线时间
104 小时
最后登录
2018-7-18
发表于 2018-6-19 09:02:58 | 显示全部楼层
感谢楼主

回复

使用道具 举报

7日久生情
2380/5000
排名
2926
昨日变化
6

0

主题

1677

帖子

2380

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185339
好友
0
蛮牛币
3467
威望
0
注册时间
2016-11-20
在线时间
251 小时
最后登录
2018-7-18
发表于 2018-6-19 09:07:04 | 显示全部楼层

回复

使用道具 举报

3偶尔光临
234/300
排名
9275
昨日变化
99

0

主题

60

帖子

234

积分

Rank: 3Rank: 3Rank: 3

UID
71644
好友
0
蛮牛币
318
威望
0
注册时间
2015-1-28
在线时间
62 小时
最后登录
2018-7-18
发表于 2018-6-19 09:12:23 | 显示全部楼层
厉害厉害

回复

使用道具 举报

7日久生情
1996/5000
排名
1121
昨日变化
3

1

主题

606

帖子

1996

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
56496
好友
0
蛮牛币
5801
威望
0
注册时间
2014-11-19
在线时间
449 小时
最后登录
2018-7-18
发表于 2018-6-19 09:13:46 | 显示全部楼层
感谢分享,十分受用~~

回复 支持 反对

使用道具 举报

5熟悉之中
591/1000
排名
3692
昨日变化
1

1

主题

37

帖子

591

积分

Rank: 5Rank: 5

UID
230664
好友
2
蛮牛币
1040
威望
0
注册时间
2017-7-6
在线时间
195 小时
最后登录
2018-7-16
发表于 2018-6-19 09:26:41 | 显示全部楼层
如果这都不算爱  ,如果这都是爱情?如果你不爱我?

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1449/1500
排名
3094
昨日变化
14

5

主题

627

帖子

1449

积分

Rank: 6Rank: 6Rank: 6

UID
239879
好友
1
蛮牛币
2597
威望
0
注册时间
2017-8-26
在线时间
389 小时
最后登录
2018-7-18

迈向小康

发表于 2018-6-19 09:46:40 | 显示全部楼层

回复

使用道具 举报

5熟悉之中
504/1000
排名
5630
昨日变化
4

2

主题

140

帖子

504

积分

Rank: 5Rank: 5

UID
252889
好友
1
蛮牛币
1750
威望
0
注册时间
2017-11-6
在线时间
142 小时
最后登录
2018-7-13
QQ
发表于 2018-6-19 10:43:52 | 显示全部楼层

回复

使用道具 举报

7日久生情
3055/5000
排名
2420
昨日变化
7

0

主题

2081

帖子

3055

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
219676
好友
1
蛮牛币
2492
威望
0
注册时间
2017-7-12
在线时间
438 小时
最后登录
2018-7-18

活力之星

发表于 2018-6-19 11:00:09 | 显示全部楼层
谢谢分享

回复

使用道具 举报

3偶尔光临
239/300
排名
10439
昨日变化
4

0

主题

68

帖子

239

积分

Rank: 3Rank: 3Rank: 3

UID
236975
好友
0
蛮牛币
399
威望
0
注册时间
2017-8-11
在线时间
81 小时
最后登录
2018-7-17
发表于 2018-6-19 11:11:49 | 显示全部楼层

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表