1
我增加了兩個CCMenuItemImage對象的CCMenuItemToggle像這樣:CCMenuItems寬鬆標籤
CCMenuItemImage *soundEnabled = [CCMenuItemImage itemWithNormalImage:@"button_sound_enabled.png"
selectedImage:@"button_sound_enabled.png"];
soundEnabled.tag = kSoundEnabled;
CCMenuItemImage *soundDisabled = [CCMenuItemImage itemWithNormalImage:@"button_sound_disabled.png"
selectedImage:@"button_sound_disabled.png"];
soundDisabled .tag = kSoundDisabled;
CCMenuItemToggle *sound = [CCMenuItemToggle itemWithItems:[NSArray arrayWithObjects:soundEnabled,soundDisabled,nil] block:^(id sender) {
CCMenuItem *item= ((CCMenuItemToggle*).sender).selectedItem;
CCLog(@"item tag: %d",item.tag);
}];
kSoundEnabled
和kSoundDisabled
與值2和3列舉的項目當我每次登錄CCMenuItemImage的標籤我創建之後他們,一切都很好。但是當我將它們記錄在塊中時,標籤顯示爲-1061138431。
另外,當我嘗試在塊的外部記錄它們時,只是在我的圖層的init代碼中更進一步,它們開始出現錯誤。
有人知道問題在這裏嗎?這是一個支持Kobold2d ARC的項目,ARC可能是這個問題嗎?我認爲這不會解釋像NSInteger這樣簡單的數據類型?
我知道我可以檢查sender.selectedIndex = 0
或sender.selectedIndex = 1
但我仍然想知道這裏有什麼問題。
我犯了一個關於這個問題的修復。 ;) – 2012-07-26 13:35:03