2012-12-30 51 views
3

我遇到了设备方向和输入问题。使用xcode-> projects->方向设置我已禁用除肖像之外的所有内容。当我打开设备时,图形保持原位(如预期的那样),但KKInput手势(如平移)似乎提供了不正确的坐标和平移。我的第一个猜疑是我错过了一些与KKInput处理convertToGL有关的东西。对我来说,似乎Cocos2d仍在阅读设备的方向,并将其考虑在内进行计算。下面是一个例子,如果它有帮助。Kobold2D KKInput方向不正确?

从正方形网格中的两个'正方形'精灵。

**** | **** 
* * | * * 
**** | **** 

将我的手指放在XX精灵上,将它拖到右边。

 **** | **** 
    -> *XX* | * * (squares move horizontal) 
     **** | **** 

将设备转到横向。

**** | **** 
* * | * * 
**** | **** 

将我的手指放在XX精灵上,将它拖到右边。

^(squares move vertical) 
    ^

    **** | 
    *XX* | 
    **** | 
    ____ | **** 
      * * 
    **** | **** 
    * * | 
    **** | 

回答

0

是的,很不幸KKInput使用OS的UIDeviceOrientation变换用户输入。即使困难的用户界面锁定肖像设备的方向将返回风景,影响计算和结果在这个错误。

如果您的项目不是太老,我建议迁移到Cocos2d 3.0,它带有一个更简单的触摸处理。

+0

实际上,我发现问题是有一个额外的触摸输入,似乎只有当设备是“FLAT”时才会收到。我在switch语句中跳过了这个案例,导致了混淆。 – Clev3r