参考链接:
https://www.cnblogs.com/zhuhongjongy/p/5441069.html
1.ScrollRect和EventTrigger的冲突
ScrollRect中的滑动事件是通过EventTrigger来响应的,所以当item也是通过EventTrigger来响应事件时,就会遮挡住后面的ScrollRect滑动事件
这时可以使用Button组件的onClick去触发点击事件,由于同一个点击事件通过不同的事件模块去响应,所以很好的处理了item挡住ScrollRect的问题
如下,btn1使用EventTrigger来实现点击,btn2使用Button组件的onClick来实现点击。两者都可以触发点击方法,但是拖拽btn1时不能带动滑动列表,而btn2能
代码如下:
1 public void AddButtonClick(GameObject go, UnityAction action) 2 { 3 Button button = go.GetComponent<Button>(); 4 if (button == null) 5 { 6 button = go.AddComponent<Button>(); 7 } 8 button.onClick.RemoveAllListeners(); 9 button.onClick.AddListener(action); 10 }
2