【发布时间】:2010-01-05 16:45:26
【问题描述】:
如何在视图类方法中“清理”静态 int 变量?每次回到这个视图时,我都需要将这些变量“归零”。 [self.view removeFromSuperview];
指令似乎不足以从这些变量中释放内存。
谢谢。 2010 年过得愉快!
这些 int 变量在视图方法中被声明为静态的。它们在视图类中不是全局的。
【问题讨论】:
标签: iphone variables static uiview
如何在视图类方法中“清理”静态 int 变量?每次回到这个视图时,我都需要将这些变量“归零”。 [self.view removeFromSuperview];
指令似乎不足以从这些变量中释放内存。
谢谢。 2010 年过得愉快!
这些 int 变量在视图方法中被声明为静态的。它们在视图类中不是全局的。
【问题讨论】:
标签: iphone variables static uiview
如果您不想保留静态值,请不要将其设为静态。
【讨论】:
-viewWillAppear: 或-viewDidDisappear 中的实例变量归零?
static 不会以任何方式影响其保留计数 - 如果您想保留它,您仍然可以保留它。
您必须通过定义类似于以下内容的 setValue 方法手动执行此操作:
@interface MyClass
{
// ...
}
+ (NSString *)myVar;
+ (void)setMyVar:(NSString *)newVa;
@end
@implementation MyClass
static NSString *myVar;
+ (NSString *)myVar { return myVar; }
+ (void)setMyVar:(NSString *)newVar { myVar = newVar; }
@end
【讨论】: