为什么我的观点相互重叠?

我只是无法理解意见,不知何故找不到一个明确的解决办法。

我有一个视图“A”,它有一个button去另一个视图“B”。 视图B带我去查看C并查看C带我回到A.

在C视图中,用户点击的任何地方,他都会看到一个图像出现。 代码是在C的.m文件中。

问题是,当我从视图C切换到A时,C的代码仍然在视图A上工作? 如果我点击A,我可以在任何地方看到这个图像,但是A是我的菜单,而不是游戏的一部分。 使图像出现在水龙头上的方法只属于查看C!

我无法理解这些观点; 在开始我使用insertSubview:atIndex:和一切都重叠,所以现在我使用addSubview: insertSubview:atIndex:我有这个问题。

有人可以从几何上解释这是如何工作的吗?

从视图C中看到的button怎么会在视图中看不见? 为什么在加载C并返回给A之后,它实现了对视图A的C代码?

为什么我的观点一直重叠? 我希望每个视图单独工作,不要从视图背后看到任何东西,或者从过去加载的视图实现代码。

请帮我看看我的意见。 非常感谢。

而不是意见,你可能要专注于UIViewControllers。 有了这个你不会有这个问题,一个UIViewController几乎总是全屏,你可以专门为它编写代码。 您可以创build三个UIViewController子类,一个用于A,B和C.在每个nib中,您可以添加一个button,并使用它来呈现下一个视图控制器(可能使用presentModalViewController :)。 在第三个子类中,可以实现用户点击时显示图像的逻辑。

一个好的做法,假设你有一个

UIViewController * myViewController具有3个属性:

UIVIEW * viewA

UIView * viewB

UIView * viewC

当你想diplay把视图A刚刚设置的堆栈

myViewController.view = viewA;

等等!