Cocos2d-x 怎样支持多点触摸(IOS上多点失灵的解决方法)

前端之家收集整理的这篇文章主要介绍了Cocos2d-x 怎样支持多点触摸(IOS上多点失灵的解决方法)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
怎样支持多点触摸
这个问题经常被问到。多点触摸特性在cocos2d-x的第一个版本中,iOS平台和安卓平台就都可用了。但是在iOS中,苹果默认屏蔽掉了这个特新,并且提供api手动支持多点触摸。

苹果

请参照 cocos2d-x/samples/Cpp/TestCpp/proj.ios/Classes/testAppDelegate.mm,39 行
[__glView setMultipleTouchEnabled:YES]
当有一个使用xcode的 cocos2d-x模板创建的项目,你可以像下面MyGame/proj.ios/AppController.mm一样进行修改

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
// Add the view controller's view to the window and display.
window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]];
EAGLView *__glView = [EAGLView viewWithFrame: [window bounds]
pixelFormat: kEAGLColorFormatRGBA8
depthFormat: GL_DEPTH_COMPONENT16_OES
preserveBackbuffer: NO
sharegroup: nil
multiSampling: NO
numberOfSamples: 0 ];

[__glView setMultipleTouchEnabled:YES]; // enable multi-touch here!! It's at about line 37
// ...
return YES;
}


安卓
在安卓平台中,默认支持多点触摸。在void MyLayer::ccTouchesBegan/Moved/Ended方法获得触摸坐标之前,你不必设置任何事情。

多点触摸的测试例子可参考TestCpp里面的“MultiTouchTest”。

猜你在找的Cocos2d-x相关文章