0

我的游戏开始屏幕上有一个按钮,当用户点击该按钮时,它将重定向到下一页,我在此按钮单击事件中调用通知,代码为

- (void)switchsounds
{
    CCLOG(@"hiii");
    [[NSNotificationCenter defaultCenter] postNotificationName:@"reloadvieweyes" object:nil];
    CCTransitionJumpZoom *transition = [CCTransitionJumpZoom transitionWithDuration:1.0 scene:[HelloWorldLayer scene]];

    // Tell the director to run the transition
    [[CCDirector sharedDirector] replaceScene:transition];


}

上面的代码是按钮点击功能

在 init statmnet 的下一页上,我输入此代码以获取按钮事件的功能

-(id) init
{
    if( (self=[super init])) {
 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(viewreloadedeyes) name:@"reloadvieweyes" object:nil];
}
return self;

}



-(void)viewreloadedeyes
{

 CCLOG(@"hiii");

}

我没有在按钮单击事件中获得 cclog 以及下一页中的功能。但是页面重定向是通过按钮 lcick 完成的。我的代码有什么问题。如何在按钮单击中从一个页面获取 nsnofication 到另一个页面.

提前致谢。

4

2 回答 2

1

通知选择器需要 NSNotification* 参数。将您的代码更改为:

-(id) init
{
    if( (self=[super init])) {
 [[NSNotificationCenter defaultCenter] addObserver:self 
  selector:@selector(viewreloadedeyes:)
      name:@"reloadvieweyes"
    object:nil];
 }
 return self;

}

-(void)viewreloadedeyes:(NSNotification*)notification
{
 CCLOG(@"hiii");
}
于 2012-08-22T08:03:56.670 回答
0

嘿伙计们,我找到了解决方案,我只是像这样将通知放在视图转换中

- (void)switchsounds
{
    CCLOG(@"hiii");

    CCTransitionJumpZoom *transition = [CCTransitionJumpZoom transitionWithDuration:1.0 scene:[HelloWorldLayer scene]];


 [[NSNotificationCenter defaultCenter] postNotificationName:@"reloadvieweyes" object:nil];
    // Tell the director to run the transition


    [[CCDirector sharedDirector] replaceScene:transition];


}

现在它工作得很好。谢谢。

于 2012-08-22T16:49:49.900 回答