Content里面的子物体在挂载了EventTrigger脚本后,会屏蔽掉ScrollRect的拖拽。导致拖拽Content中物体的时候,没有拖拽效果。
解决方法:
自己写一个脚本继承Eventrigger,然后在EventTrigger中判断是否处于ScrollRect下,找到ScrollRect脚本:
ScrollRect scrollrect = GetComponentInParent<ScrollRect>();
if (scrollrect != null)
{
Transform rect = scrollrect.content;
if (rect != null)
{
if (transform.IsChildOf(rect.parent))
{
_scrollrect = scrollrect;
}
}
}
然后脚本重写Eventtrigger中的OnBeginDrag,OnDrag,OnEndDrag,OnInitializePotentialDrag,OnScroll
并在这几个函数中,调用ScrollRect中的对应函数。这样就能触发ScrollRect的事件了EventTrigger