1

再会,

我的问题是我有一个设置屏幕,它是一个 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];

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

4

1 回答 1

0

尝试将开关添加为

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

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

我,e 使用 [[[CCDirector sharedDirector]openGLView]addSubview:soundSwitch] 代替。

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

于 2012-12-07T09:20:55.003 回答