我有一些复杂的菜单,每次根据一个州建立不同的菜单。
我有这段代码:
CCMenuItemSprite *sign = [CCMenuItemSprite itemWithNormalSprite:[CCSprite spriteWithFile:[NSString stringWithFormat:@"image%d.png",[memoryInstnace getCellImageNumber:i]]] selectedSprite:[CCSprite spriteWithFile:[NSString stringWithFormat:@"image%d.png",[memoryInstnace getCellImageNumber:i]]]];
CCMenuItemSprite *playing = [CCMenuItemSprite itemWithNormalSprite:[CCSprite spriteWithFile:@"playing.png"]
selectedSprite:[CCSprite spriteWithFile:@"playing.png"]];
item2=[CCMenuItemToggle itemWithTarget:self selector:@selector(play:)items:sign,playing,nil];
item2.position=pixels[i];
item2.tag=i;
Menu= [CCMenu menuWithItems: item2, nil];
这是一个切换按钮,所以当它在A上并且它被击中时它来到B,但我想在应用程序中的某个代表(不是当有人点击它时)将它的图像从B改变为A. / p>
我不能setNormalImage
到第2项。
我该怎么做? 谢谢。
答案 0 :(得分:1)
更改CCMenuItemToggle项的selectedIndex应该可以解决问题。这将通过否定当前selectedIndex来切换所选状态(即0变为YES,因此1和1变为NO,因此为0):
item.selectedIndex = !item.selectedIndex;