0

我是 iPhone 开发的新手。我的问题是我有NSMutableArray一些自定义对象。每个对象都有 4 个属性,即名称(NSString)、图像(UIImage)、按钮(UIButton)和与之关联的布尔值。viewDidLoad按钮以编程方式随机生成,并在视图加载(内部)时放置在视图上。如何保存这个对象数组并在用户退出然后重新进入应用程序时重新生成它。按钮还必须保留它们在视图上的位置。提前致谢。

4

1 回答 1

0

您可以使用 ARC,一种 GC。所有对象在超出引用时都会被释放。我可以向您展示保留这些对象的 2 个想法。

1:将这些对象保留在父 ViewController 或 Delegate 类上。

您可以在父 ViewControler 或 Delegate 类上提前声明所有对象。

NSMutableCustomArray *customArray = [NSMutableCustomArray array];
[customArray setParameters];
ChildView *childView = [[ChildView alloc] init];
[customArray setCustomArray:customArray];
[self.view addSubview:ChildView];

除非父对象存在,否则 customArray 中的所有对象都不会被引用。

2:使用 CoreData 或 NSUserDefaults。

如果您想要简单的数据、字符串、布尔值等,NSUserDefaults 非常有用。至于UIButton,你必须恢复位置很累。

[defaults setObject:string forKey:@"customString"];
[defaults setFloat:10.0 forKey:@"button_x"];
[defaults setFloat:10.0 forKey:@"button_y"];
[defaults setFloat:10.0 forKey:@"button_width"];
[defaults setFloat:10.0 forKey:@"button_height"];
于 2013-02-03T03:36:24.733 回答