点击ui事件传参

点击ui事件传参,第1张

概述监听泛型publicclassPEListener:MonoBehaviour,IPointerClickHandler,IPointerDownHandler,IPointerUpHandler,IDragHandler{publicAction<object>onClick; publicAction<PointerEventData>onClickDown;publicobjectargs;publicvoidOnPointerClick(

监听泛型

public class PEListener : MonoBehavIoUr,IPointerClickHandler,IPointerDownHandler,IPointerUpHandler,IDragHandler{

public Action<object> onClick;

 public Action<PointerEventData> onClickDown;

public object args;

public voID OnPointerClick(PointerEventData eventData)
{
if (onClick != null)
{
onClick(args);
}
}

public voID OnPointerDown(PointerEventData eventData)
{
if (onClickDown != null)
{
onClickDown(eventData);
}
}

 

}

监听事件

protected T GetorAddComponent<T>(GameObject go) where T:Component {
T t = go.GetComponent<T>();
if (t == null)
t = go.AddComponent<T>();
return t;
}

protected voID OnClick(GameObject go, Action<object> cb,object args)
{
PEListener Listener = GetorAddComponent<PEListener>(go);
Listener.onClick = cb;
Listener.args = args;
}

protected voID OnClickDown(GameObject go, Action<PointerEventData> cb) {

PEListener Listener = GetorAddComponent<PEListener>(go);
Listener.onClickDown = cb;
}

多个img添加事件

for (int i = 0; i < posBtnTrans.childCount; i++) {
Image img = posBtnTrans.GetChild(i).GetComponent<Image>();
OnClick(img.gameObject, (object args) =>
{
ClickPosItem((int)args);
audioSvc.PlayUIAudio(Constans.UIClickBtn);


},i);
}

 

总结

以上是内存溢出为你收集整理的点击ui事件传参全部内容,希望文章能够帮你解决点击ui事件传参所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1212157.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存