用手在屏幕上用数字笔写在ipad / iphone上

时间:2012-06-18 10:56:15

标签: ios ios5 uikit core-graphics quartz-2d

我正在使用iphone和ipad上的触控笔绘图应用程序。直到现在,我已经实现了基本绘图并使用数字笔测试它工作正常,但我有一个问题,而在iphone / ipad上绘图,如果我用手指触摸屏幕之前笔,笔不会工作,所以我想要达到的目标是,即使手指触摸ipad屏幕,我也希望能用笔书写。

此致 兰吉特

3 个答案:

答案 0 :(得分:2)

没有办法区分手指和手写笔,因为手写笔应该模仿手指的触摸。您将要么必须进行所有触摸(包括在屏幕上的一只手)或使它只有触摸屏幕的第一个“手指”可以绘制(意味着您必须将触控笔放在屏幕上,然后才能触摸屏幕)可以触摸它。)

@iLive提到你应该实现的那些委托方法是正确的,但我假设你已经在使用这些方法了。

UPDATE:

跟踪特定触摸就像在touchesBegan期间将其实例的地址添加到数组一样简单。将它们附加到CFMutableArrayRef。然后,在touchesMoved方法中,您只需按顺序获取触摸索引。

答案 1 :(得分:1)

最可能的答案是您可以收到的触摸的数量 显然,如果不启用多点触控,您将无法一次接触一次!
因此,如果您的手先触摸屏幕,则不会接收数码笔所做的其他触摸
首先启用multi-touch功能。
这些是您必须实现的方法:

  
      
  • - (void)touchesBegan:(NSSet *)触及withEvent:(UIEvent *)事件;
  •   
  • - (void)touchesMoved:(NSSet *)触及withEvent:(UIEvent *)事件;
  •   
  • - (void)touchesEnded:(NSSet *)触及withEvent:(UIEvent *)事件;
  •   
  • - (void)touchesCancelled:(NSSet *)触及withEvent:(UIEvent *)事件
  •   

查看Apple的链接:http://developer.apple.com/library/ios/#documentation/EventHandling/Conceptual/EventHandlingiPhoneOS/MultitouchEvents/MultitouchEvents.html了解更多信息!

希望这有帮助!

答案 2 :(得分:0)

加成 您可以至少制作一个从下边缘(可由用户配置高度)的层(不接受任何触摸),这样至少您的手掌可以放在ipad屏幕表面上,这样可以降低不必要的触摸的可能性并使绘图更多稳定。