1

好的,我一直在为 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() 中,而不是它的工作......

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

只是为了确认该行确实被调用,并且 EnabledGestures 确实出现在触摸板数据中。

4

1 回答 1

0

解决:

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

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

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

于 2013-06-06T22:32:11.617 回答