【发布时间】:2011-11-14 08:13:02
【问题描述】:
我正在制作一个应用程序,其中有
MyViewController1
其中的MyViewController2 + 9 UIView(MyView1、MyView2、MyView3、MyView4、MyView5、MyView6、MyView7、MyView8、MyView9)。
然后根据我的要求管理每个视图的隐藏和显示 由于最初不需要所有视图,因此在单击按钮时需要它们...
所以我所做的是->
第 1 步)在 myViewController2.xib 中添加每个视图(视图未添加到 viewController2 的视图中 ..即它们不是 viewController2 的子视图)
步骤 2) IBOutlet UIView *myView(1..9);在 MyViewController2.h 中
步骤 3) 属性(nonatomic, retain) UIView *myView(1..9) in MyViewController2.h
步骤4)在MyViewController2.m中合成myView(1..9)
viewDidLoad(){
myView1.frame = CGRectMake(x, y, y, y)//any Value
[self.view addSubView:myView1]; //added as child to this view
//I did for all the view
}
第 5 步)现在根据要求应用 alpha =0/1、转换、任何其他属性..
一切都很好......
但是现在我的应用程序占用了太多内存,无论何时加载此页面...
所以现在我想解决办法
仅在需要时为每个 UIView 分配内存,即单击按钮和 当不需要时为该视图释放内存。
如何做到这一点,因为我的所有 9 个视图都是使用 IB 创建的,那么如何在运行时从界面生成器加载视图???
如果有的话,请提出任何其他解决方案...
提前谢谢...
【问题讨论】:
标签: iphone memory-management uiview