2012-10-19 76 views
1

如何獲取CCMenu項目以在未選中時調用選擇器?Cocos2d:如何獲取CCMenu項目以在未選中時調用選擇器?

這甚至可能嗎?

當添加一個CCMenuItem我可以指定一個函數,將在按鈕激活時調用。我希望能夠調用一個功能,一旦沒有「選擇」按鈕(我的意思是選擇,而不是激活)。

我想我必須重寫一些方法,但不知道哪一個:)。

有什麼建議嗎?

回答

2

子類CCMenuItemWhatever和覆蓋一個方法(從CCMenuItem派生):

-(void) unselected{ 
    [super unselected]; 
    [self myUnselectedExtension]; 
} 

-(void) myUnselectedExtension{ 
    // whatever is your need , do it here. 
} 
1

不修改CCMenu是不可能的。

然而,您可以運行計劃更新並檢查菜單項的每個selected屬性,並觀察從先前選定狀態(例如,存儲在伊維爾中)的任何更改。

+0

我不介意修改CCMenu的sublcass。但不知道從哪裏開始。我想我可以在CCMenu子類中有一個額外的方法,它使所有選定的屬性和「布爾值」和「布爾值」返回true或false。這與你的更新建議結合應該做。我會嘗試,所以現在我開始行動,然後,一旦嘗試,我會接受。謝謝 :) – mm24

相關問題