我正在我的应用程序中动态创建一些“n”个UIView对象。我可以将这些对象拖放到屏幕中的任何位置。 chenge改变了他们的一些属性。现在我想用持久存储保存所有这些细节,这样每当我启动应用程序嵌套时,我就能看到那些已经创建的对象。
那么最佳解决方案是什么?
他们可以参考这个表格的任何样本申请表,我可以参考吗?
答案 0 :(得分:0)
我认为你可以这样做。
// Create an array to store the properties
NSMutableArray *viewProperties = [NSMutableArray array];
// Loop through all the views
for (UIView *view in views) {
// Create a dictionary for each view
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
// Store the properties in the dictionary
[dict setValue:NSStringFromCGRect(view.frame) forKey:@"ViewFrame"];
...
// Add the dictionary to the array
[viewProperties addObject:dict];
}
// Finally add the array to persistence
[userDefaults setValue:viewProperties forKey:@"ViewProperties"];
稍后您可以从持久性中获取数组,并使用属性创建视图。
NSMutableArray *viewProperties = [userDefaults valueForKey:@"ViewProperties"];
for (NSDictionary *dict in viewProperties) {
UIView *view = [[UIView alloc] init];
NSString *frameAsString = [dict valueForKey:@"ViewFrame"];
view.frame = CGRectFromString(frameAsString);
// Get other properties from dictionary and set it to view
}