TextMesh Pro 超链接解析失败
2017-11-06 12:44
507 查看
前言
软件环境
Unity3D 5.3.7p4TextMesh Pro 1.0.555.0b11(Jul 06.2017)
UGUI做为UI解决方案
文档资料
TextMesh Pro的资料,可以参考我之前的博客:http://www.cnblogs.com/zhaoqingqing/p/7471499.html解析超链接失败
查看Textmeshpro的超链接示例,默认它是传入了一个Camera,我后面将参数Camera传为null。public void OnPointerClick(PointerEventData eventData) { if (m_TextMeshPro) { //NOTE 如果UGUI没用Camera渲染,TMPText不传入Camera int linkIndex = TMP_TextUtilities.FindIntersectingLink(m_TextMeshPro, Input.mousePosition, null); if (linkIndex != -1) { TMP_LinkInfo linkInfo = m_TextMeshPro.textInfo.linkInfo[linkIndex]; //把解析后的linkId,通过事件发出去 InvokeEvent(linkInfo.GetLinkID(), linkInfo.GetLinkText(), eventData); } } }
具体源码可以查看TMP_TextUtilities.FindIntersectingLink() 进入到方法:
TMP_TextUtilities.ScreenPointToWorldPointInRectangle(transform, (Vector2) position, camera, out position);
原因分析
如果传入的camera没有渲染当前的UI,TMP通过射线去找到当前点击的区域,返回linkIndex,它会解析失败。解决办法
如果你的UI渲染未使用相机,而是使用Screnn Space 或World Space的话,你可以把最后的Camera参数传入null,就可以解决。相关文章推荐
- Error Domain=NSCocoaErrorDomain Code=3840Json解析失败
- js单击事件及超链接触发失败原因之一(经验分享)
- apk上传到应用市场时出现解析失败
- webservice 传输数据过大,解析失败
- pdfFactory Pro 不能被安装(AddPrinterDriver 失败)...找不到指定的模块
- 备忘录:将oracle 解析失败的sql 转储到alert 日志
- oracle提示 ORA-12154: TNS: 无法解析指定的连接标识符 OCIEnvCreate 失败, 返回代码为-1,但错误消息文本不可用
- OkHttp3源码解析04-失败重连
- Qt .pro文件解析
- Gson解析泛型对象失败的解决方案
- ajaxPro.dll用法解析
- maven环境变量配置以及失败原因解析
- 网上看到的一篇DNS正向解析失败的问题解决方法
- TextMesh Pro Emoji Align With Text(表情和文字对齐)
- FineUIPro控件库深度解析
- windows平台下Tuxedo应用simpapp编译失败问题解析
- Android简易的自动更新(通知栏+系统下载),包含7.0系统解析安装包失败的处理
- RequisitePro错误:用户reqpro登录失败
- 【百度地图API】当地址解析失败时,如何调用search方法查找地址
- Android Studio 中使用百度SDK出现162请求串密文解析失败的解决方案