一种比较好的UGUI表情系统&超链接解决方案 (2)

把屏幕坐标转换到Text中的坐标后,再进行检测

/// <summary> /// 点击事件检测是否点击到超链接文本 /// </summary> public void OnPointerClick(PointerEventData eventData) { Vector2 lp; RectTransformUtility.ScreenPointToLocalPointInRectangle( rectTransform, eventData.position, eventData.pressEventCamera, out lp); foreach (var hrefInfo in m_HrefInfos) { var boxes = hrefInfo.boxes; for (var i = 0; i < boxes.Count; ++i) { if (boxes[i].Contains(lp)) { if (onHrefClick != null) { onHrefClick(hrefInfo.name); } Debug.Log("点击了:" + hrefInfo.name); return; } } } }

可以在这里获取全部代码
https://github.com/lijia4423/EmojiText.git

参考:
https://blog.uwa4d.com/archives/Sparkle_UGUI.html

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpfxgj.html