你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> Cocos2d-x3.2 iOS下開啟多點觸控

Cocos2d-x3.2 iOS下開啟多點觸控

編輯:IOS開發綜合

iOS下默認是不開啟多點觸控的,我們要想要使用需要做如下的內容:

iOS文件夾下:AppController.mm


需要加一行代碼:

 //  只需要新增這樣一行代碼就可以使用多點觸控啦。
    [eaglView setMultipleTouchEnabled:YES];
    
    



具體位置見下面:

- (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]];

    // Init the CCEAGLView
    CCEAGLView *eaglView = [CCEAGLView viewWithFrame: [window bounds]
                                     pixelFormat: kEAGLColorFormatRGBA8
                                     depthFormat: GL_DEPTH24_STENCIL8_OES
                              preserveBackbuffer: NO
                                      sharegroup: nil
                                   multiSampling: NO
                                 numberOfSamples: 0];

    // Use RootViewController manage CCEAGLView 
    _viewController = [[RootViewController alloc] initWithNibName:nil bundle:nil];
    _viewController.wantsFullScreenLayout = YES;
    _viewController.view = eaglView;
    
    
    
    //  只需要新增這樣一行代碼就可以使用多點觸控啦。
    [eaglView setMultipleTouchEnabled:YES];
    
    

    // Set RootViewController to window
    if ( [[UIDevice currentDevice].systemVersion floatValue] < 6.0)
    {
        // warning: addSubView doesn't work on iOS6
        [window addSubview: _viewController.view];
    }
    else
    {
        // use this method on ios6
        [window setRootViewController:_viewController];
    }

    [window makeKeyAndVisible];

    [[UIApplication sharedApplication] setStatusBarHidden:true];

    // IMPORTANT: Setting the GLView should be done after creating the RootViewController
    cocos2d::GLView *glview = cocos2d::GLView::createWithEAGLView(eaglView);
    cocos2d::Director::getInstance()->setOpenGLView(glview);

    cocos2d::Application::getInstance()->run();

    return YES;
}

測試:

 auto listener1 = EventListenerTouchAllAtOnce::create();
        listener1->setEnabled(true);
        listener1->onTouchesBegan = [ = ](const std::vector& touches, Event* event)
        {
            
            log("%lu",touches.size());
            
        };
        
        _eventDispatcher->addEventListenerWithFixedPriority(listener1, 1);








  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved