cocos2d-x NotificationCenter

2540 단어 notification
다음으로 이동: http://www.xinze.me/cocos2d-x-ccnotificationcenter/
전단 개발 에서 JS 와 as3 는 모두 좋 은 감청 체 제 를 가지 고 있 습 니 다. 저 희 는 Event 의 addEventListener, dispatchEvent 를 사용 하면 소나무 결합 을 실현 할 수 있 습 니 다.cocos2d - x 를 사용 하려 고 시도 할 때, 나 는 이런 사건 메커니즘 을 찾 았 다.
자신 이 더 이상 존재 하 는 코드 를 쓰 고 싶 지 않 기 때문에 인터넷 을 찾 아 보 려 고 합 니 다. 첫 번 째 생각 은 바로 PureMvc – c + + 를 보 러 가 는 것 입 니 다. 이곳 의 관찰자 모델 은 쉽게 소나무 결합 을 실현 할 수 있 지만 보 니 c + + 에서 사용 하 는 것 이 귀 찮 은 것 같 아서 버 렸 습 니 다.구 글 에서 검색 하여 어떤 글 을 찾 을 수 있 습 니까?  Generic Observer Pattern and Events in C++ – CodeProject  보고 나 니 이 생각 으로 할 수 있 을 것 같 았 다.
무심결에 친구 에 게 물 어 보 니 cocos2d - x 에 CC Notification Center 가 사용 할 수 있다 는 것 을 알 게 되 었 습 니 다. 효 과 를 테스트 해 보 니 편리 합 니 다. 사용 방식 은 다음 과 같 습 니 다.
//    
CCNotificationCenter::sharedNotificationCenter()->postNotification(CLICK_TEST_MSG, (CCObject*)data);

//    
void GameManager::initListener()
{
    CCNotificationCenter::sharedNotificationCenter()->addObserver(this, callfuncO_selector(GameManager::onClickTest), CLICK_TEST_MSG, NULL);
}

//    
void GameManager::onClickTest(CCObject* obj)
{
    CCMessageBox("onClickTest", "Title");

    //      
    CCNotificationCenter::sharedNotificationCenter()->removeObserver(this, CLICK_TEST_MSG);
}

좋은 웹페이지 즐겨찾기