2012-06-07 128 views
1

我目前使用这个,如果来检查statment如果一个UIView被加载,这一点,如果statment完美的作品一个UIView ..如何卸载

if (!myviewName.isViewLoaded) { 
     //not loaded so load my view 

    } 
    else (myviewName.isViewLoaded){ 
     //is loaded so remove my view (unload) 

    } 

然而,当我尝试删除我不认为我的看法正确地这样做,因为我永远不能进入if语句的视图被加载后的第一时间,第一部分...

这里面其他(myviewName.isViewLoaded)代码{

[myviewName removeFromParentViewController]; 
    [animatedActionView removeFromSuperview]; 

我之所以使用removeFromParentViewController,是因为我已经加入myviewName作为animatedActionView的子视图,像这样

[animatedActionView addSubview:b1VC.view]; 
[navigationController.view insertSubview:animatedActionView belowSubview:tabbarView]; 

的animatedActionView被添加作为一个子视图我navigationcontroller,我把它放在我的tabbarview背后这也是对我的navigationcontroller子视图..

希望这一切才有意义.. 只是重复我的问题,我如何删除一个视图,以便将访问如果(!myviewName.isViewLoaded){正确。

anyhelp将不胜感激。

更新: 根据回复,我被要求解释我正在尝试做的更详细的,我会在这里做。因此,我的原始项目有一个NavController控制我的项目第一部分(查询数据库)所需的所有视图,我的项目的第二部分显示吨或数据。

因此,我在一个新项目中对我的最终观点进行了原型设计,以解决所有我可能遇到的问题,并希望以不会被苹果拒绝的方式来实现。

因此,当我到达我的navController的最终视图时,我在其中加载另一个navController。 (这会让我拒绝吗?)

这个(子)navController,我将引用otherNav将控制最终的视图,它会加载几个不同的detailViewController与一个特殊的滑动过渡动画,用户将能够滑动在DetailedViews之间左右。

我也添加了一个tabBar(在它自己的viewcontroller中)作为othernav的子视图,当用户在详细视图之间转换时,我计划根据视图更改tabBar图标,因此当用户从一个详细视图到另一个然后以前的图标将淡出,新的图标将淡入。

终于我有几个其他viewcontrollers我称为actionViews(这是我的问题是关于)作为子视图加载/插入otherNav但放置在tabBar后面并在选择并取消选择TabBar按钮时向上和向下滑动。

这里是所有视图以及它们如何坐在屏幕上的图形表示。

enter image description here

+0

你为什么要卸载您的看法?这通常是不需要的。 –

+0

我认为更多的上下文会有所帮助,您为什么想要卸载视图?这听起来像你对你正在使用的对象及其预期的生命周期有一些重大的混淆。例如'isViewLoaded'是一个UIViewController而不是UIView的方法,它只告诉你这个控制器的'view'属性。为什么你认为你需要检查一个控制器的视图是否被加载? UIViewController已经提供了'viewDidLoad'和'viewDidUnload'方法,所以我不明白你为什么要构建这种条件分支。 – Jonah

+0

没关系,所以我添加了更多的上下文..希望你们看到我想做的事情,并可以告诉我我做得对,更可能是错误的:)我试图创建一个更模块化的接口,所以如果我有要解决一件事或另一件事,我只需要去正确的班级和繁荣的地方修理它然后。 – HurkNburkS

回答

3

你需要照顾myViewName的看法:

[myViewName.view removeFromSuperview]; 
myViewName.view = nil; 
+0

这工作..不知道我在做什么是正确的,但我会很快标记你的答案。 – HurkNburkS

+0

if(questionAsker.shortly> = one_month)[self giveUp]; –