如何在Unreal Engine中接收touch-hold-drag事件 4 手游开发C++

How to receive touch-hold-drag event in Unreal Engine 4 Mobile Game Development C++

我是 UE4 新手,我开始用这个引擎制作我的第一款手机游戏。

我在执行标题中描述的活动时遇到了麻烦。基本上,屏幕上有一堆瓷砖。我想要的是当用户触摸任何图块并按住他的手指并将其拖过其他图块时,所有 'touched' 个图块都会改变颜色。

我需要在 Engine-Input 中添加什么 Action/Axis 映射?我也尝试使用 TilekMesh->OnInputTouchEnter.AddDynamic(this, &AMyProjectBlock::OnFingerPressedBlock);,但即使我 touch-hold 并拖动,瓷砖似乎也没有改变颜色。但是当我改用 OnInputTouchBegin 时,它可以成功运行,但我不想单独触摸并放开每个瓷砖。任何帮助将不胜感激。

为touch enter添加动态事件的代码已经正确。我错过的是必须在 PlayerController 中启用触摸事件,如下所示:

bEnableTouchOverEvents = true;

这应该可以解决问题。