在CCLayer中添加UISwitch时出现问题

时间:2012-12-07 07:25:46

标签: iphone ios cocoa-touch cocos2d-iphone

美好的一天,

我的问题是我有一个CCLayer的设置屏幕,我想在其中显示UISwitch。我在settings.m

中使用了这段代码
    UISwitch * soundSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(240,150,0,0)];
    [soundSwitch addTarget:self action:@selector(soundButtonPressed:) forControlEvents:UIControlEventValueChanged];
    [[[CCDirector sharedDirector] view] addSubview:soundSwitch];

但现在游戏启动后立即显示开关。我希望它仅在我的设置层初始化时出现。在这方面有任何帮助吗?

1 个答案:

答案 0 :(得分:0)

尝试将开关添加为

UISwitch * soundSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(240,150,0,0)];
    [soundSwitch addTarget:self action:@selector(soundButtonPressed:) forControlEvents:UIControlEventValueChanged];

[[[CCDirector sharedDirector]openGLView]addSubview:soundSwitch];

我,请改用[[[CCDirector sharedDirector] openGLView] addSubview:soundSwitch]。

还有一件事你的initWithFrame:CGRectMake(240,150,0,0)毫无意义,因为0长度和0宽度没有意义。尝试一些有效的坐标,如(130,210,30,30)