菜鸟教程小白 发表于 2022-12-12 14:38:14

ios试图左右拖动图像


                                            <p><p>我有一个游戏,在屏幕底部绘制了一排卡片。我希望这样,如果用户触摸屏幕并将手向右移动,卡片将向右移动,直到他抬起手为止。然后如果他将手在触摸屏上向左移动,卡片将向左移动,直到他抬起手为止。</p>

<p>我的第一个想法是使用滑动事件。但是在手指松开之前滑动不会给出消息,我希望卡片在手移动并触摸屏幕时移动。</p>

<p>我的想法是获取触摸位置的 x 坐标,如果它大于前一个 x,则将卡片向左移动,否则向右移动。</p>

<p>我开始使用这段代码,但有点坚持下一步该做什么,或者我做错了</p>

<pre><code>- (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    NSUInteger touchCount = ;
    NSUInteger tapCount = [ tapCount];
}
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您将需要一些其他的触摸委托(delegate)方法</p>

<p>实现 <code>-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event</code> 并在该方法中获取触摸的初始 x 和 y 坐标。将它们保存到类范围的实例变量中。</p>

<p>然后在触摸移动时,将新触摸的x坐标与触摸开始时的原始坐标进行比较,如果x<则向左移动,否则如果x>则向右移动。</p>

<p>请注意,<code>touchesMoved:withEvent</code> 仅在触摸移动时调用,因此如果用户触摸并向右移动,然后手指保持静止,则不会报告触摸。</p>

<p>您需要实现 <code>-touchesEnded:withEvent:</code> 和 <code>-touchesCancelled:withEvent:</code> 以在触摸结束时拾取。 </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios试图左右拖动图像,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/18789425/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/18789425/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios试图左右拖动图像