我想設置的按鈕被點擊類瓷磚價值如何將類參數傳遞給目標C中的選擇器?
- 如果點擊onPlus它將有一個字符串值= @「+」
- 如果點擊onMinus它將有一個字符串值= @」 - 」
這裏的代碼
//Class Tile
@interface Tile : TouchableNode {
NSString *val;
}
-(void) setVal:(NSString *)v
{
val = v;
}
-(NSString *) getVal
{
return val;
}
而在另一個類
我有這樣
for(Tile *tile in player)
{
if (tile.getVal == @"P") {
if (pauseStatus == 0) {
pauseStatus = 1;
[[CCDirector sharedDirector] pause];
CGSize size = [[CCDirector sharedDirector] winSize];
pauseLayer=[[CCLayer alloc] init];
pauseLayer.anchorPoint=ccp(0,0);
pauseLayer = [CCLayerColor layerWithColor: ccc4(0, 0, 255, 125) width: 300 height: 150];
pauseLayer.position = ccp(size.width/2, size.height/2);
pauseLayer.isRelativeAnchorPoint = YES;
[self addChild: pauseLayer z:8];
//Here are 2 two button that when user click it will have @"+" value or @"-"
plusBtn = [CCMenuItemImage itemFromNormalImage:@"plus.png" selectedImage:@"plus.png" target:self selector:@selector(onPlus:)];
minusBTn = [CCMenuItemImage itemFromNormalImage:@"minus.png" selectedImage:@"minus.png" target:self selector:@selector(onMinus:)];
pauseMenu = [CCMenu menuWithItems:plusBtn, minusBTn, nil];
[pauseMenu alignItemsHorizontally];
[self addChild:pauseMenu z:10];
}
}
}
一個代碼,我有我想要的對象瓷磚發送到該方法
-(void)onPlus:(Tile *) set
{
NSString *plus = @"+";
[set setVal:plus];
}
-(void)onMinus:(Tile *) set
{
NSString *minus = @"-";
[set setVal:minus];
}
如何傳遞對象瓷磚的方法onPlus & onMinus方法? 或者它有另一種方式使它?
啊......通過在暫停層了這兩個按鈕 .The屏幕的方式是暫停,但程序還在運行...... 換句話說,我要等待按鈕動作,使當我觸摸按鈕...程序可以連續運行... 所以我想知道一個等待按鈕的動作功能.. – 2012-01-06 02:55:14
如果程序仍在運行,它不會只是工作的方式你編碼它?你有機會嘗試'userData'技巧嗎? – dasblinkenlight 2012-01-06 04:27:10
你的代碼是可以工作的,但是在我的函數完成之後它會設置爲@「+」或者@「 - 」。所以我得到了@「P」的值,我不希望它是這樣。所以我想等到我按下按鈕。 – 2012-01-06 06:20:56