XNA手势在一个类

时间:2013-05-31 15:33:42

标签: class input xna touch windows-phone

好的,所以我一直致力于Windows Phone 7.1的项目,我遇到了一个奇怪的问题。

当我尝试使用手势时,我无法在Game1.cs中的任何地方设置TouchPad.EnabledGestures

我有:

public class InputController : Controller
{
    public InputController()
    {

    }

    public override void Initialize()
    {
        TouchPanel.EnabledGestures = GestureType.Hold | GestureType.Tap | GestureType.FreeDrag;
        base.Initialize();
    }

    public override void Update()
    {

        while (TouchPanel.IsGestureAvailable)
        {
            GestureSample gs = TouchPanel.ReadGesture();

            if (gs.GestureType == GestureType.FreeDrag)
                _Acceleration += 1;
        }
    }
}

这不起作用。 如果我删除“TouchPanel.EnabledGestures = GestureType.Hold | GestureType.Tap | GestureType.FreeDrag;” 把它放在Game1.LoadContent()而不是它的工作......

有没有办法让它在课堂上工作?

只是确认调用了DOES行,并且EnabledGestures确实出现在TouchPad数据中。

1 个答案:

答案 0 :(得分:0)

解决:

事实证明这是一个初始化问题。

基本上,数据是从未初始化的TouchPad实例加载的,然后初始化了TouchPad。这导致了一些错误

如果其他人有此问题,请确保您的订单正确无误。 在声明成员变量时使用初始化函数而不是初始化:)