通过手工添加的子视图添加了故事板的子视图?

时间:2012-05-09 15:27:28

标签: iphone objective-c ios xcode storyboard

我对使用带有故事板的x代码的子视图有一些小问题。

我想用球做一点应用。你必须点击它们,它们就会消失。 我还想要一个暂停菜单。

所以我制作了一个带有1个视图的viewController(一般视图),1个子视图(暂停菜单),用故事板制作(所以我在代码中看不到它们)

我想在这个viewController中有一个EAGLView,所以我这样做了:

self.director = [CCDirector sharedDirector];
self.myglView = [EAGLView viewWithFrame:CGRectMake(0, 60, 320, 420)
                                pixelFormat:kEAGLColorFormatRGBA8
                                depthFormat:0       
                         preserveBackbuffer:NO
                                 sharegroup:nil
                              multiSampling:NO
                            numberOfSamples:0                   ];
}

[self.director setOpenGLView:self.myglView];

glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
glClearColor(0.0, 0.0, 0.0, 0.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

self.myglView.opaque = NO;
self.myglView.backgroundColor = [UIColor clearColor];
[self.view addSubview:self.myglView];

我在这个eaglview中创建的2D世界中添加了一些身体(球),这是有效的,但现在我想暂停游戏。

我用这个“弹出”暂停菜单:

self.pauseView.hidden = false;

暂停菜单出现,但所有球都在暂停菜单上:/

有人看到我的问题是什么? ^^” 是否有类似图层或优先级子视图的内容?

非常感谢阅读并帮助我:)

1 个答案:

答案 0 :(得分:1)

如果您在故事板中添加了pauseView,那么它将在您加载视图时添加,这是在您实际添加EAGLView之前添加的。添加子视图就像将Legos堆叠在一起。最后一个添加,位于顶部。

您应该可以在暂停视图下方添加EAGLView,如下所示:

[self.view insertSubview:self.myglView belowSubview:self.pauseView];