Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用触摸点使我的矩形在WindowsPhone7中移动?_C#_Visual Studio 2010_Windows Phone 7_Xna - Fatal编程技术网

C# 如何使用触摸点使我的矩形在WindowsPhone7中移动?

C# 如何使用触摸点使我的矩形在WindowsPhone7中移动?,c#,visual-studio-2010,windows-phone-7,xna,C#,Visual Studio 2010,Windows Phone 7,Xna,我遇到了一个问题,如何在WindowsPhone7中使用触摸输入向上或向下移动我的简单矩形。我设法向上移动矩形并进行点击测试,但如何知道我的触摸输入是否下降 我做了一个密码箱,这是我的密码 Rectangle hitbox = new Rectangle(32, GraphicsDevice.Viewport.Bounds.Height / 2 - 64,

我遇到了一个问题,如何在WindowsPhone7中使用触摸输入向上或向下移动我的简单矩形。我设法向上移动矩形并进行点击测试,但如何知道我的触摸输入是否下降

我做了一个密码箱,这是我的密码

        Rectangle hitbox = 
                  new Rectangle(32, 
                                GraphicsDevice.Viewport.Bounds.Height / 2 - 64,
                                32,
                                128);

        foreach (TouchLocation location in TouchPanel.GetState())
        {
            hitbox = new Rectangle((int)blueBar.X, (int)blueBar.Y, 32, 128);
            if (hitbox.Contains((int)location.Position.X, (int)location.Position.Y))
            {
                Debug.WriteLine("We’re hit!");
                blueBar.Y -= 10;
            }
        }

与其使用矩形来点击测试用户的触摸,为什么不试试这种方法:

这个想法是,你只需激活“最近的”UI元素的接触点。。。这样,您就不必担心混乱的碰撞检测:-)

除此之外,我还写了一篇关于使用触摸点在屏幕上平滑移动精灵的文章: