0
A
回答
0
如果你想保留数组,直到退出应用程序,在分配它的App Delegate的-init
方法,并将其发布到App Delegate的-dealloc
方法中。除非您在内存管理中犯了一个错误并且多次释放阵列,否则它将在应用程序的整个生命周期中可用。
例如:
@interface MyApp <NSApplicationDelegate>
{
NSArray *myArray;
}
@end
@implementation MyApp
- (id)init
{
if (nil != (self = [super init]))
{
myArray = [[NSArray alloc] init];
}
return self;
}
- (void)dealloc
{
[myArray release], myArray = nil;
[super dealloc];
}
@end
0
如果我理解正确,你要存储一个NSArray的实例盘?
在这种情况下使用[NSKeyedArchiver archiveRootObject:myArray toFile:path]
的文件夹来存储文件时可以用下式确定:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
2
可以保留在应用程序委托类的对象,而在申请终止发行。
即
在应用程序委托类
@interface MyAppDelegate : NSObject <UIApplicationDelegate>
{
UIWindow *window;
NSMutableArray *arrayObjects;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) NSMutableArray *arrayObjects;
现在你可以使用分配给委托类的实例arrayObjects,您还可以使用存储在阵列中的价值。
MyAppDelegate *appDelegate = (MyAppDelegate*)[[UIApplication sharedApplication]delegate];
appDelegate.arrayObjects = [[NSMutableArray alloc] initWithObjects:@"Object 1",@"Object 2",@"Object 3",nil];
这将保留数组中的值。现在,您可以在正确初始化之后使用数组中的任何位置。
相关问题
- 1. 只要应用程序打开/运行,如何保持WakeLock?
- 2. 运行程序后保留一个值?
- 3. NSDirearies的NSArray的内存保留
- 4. 如何运行只有一个应用程序的实例
- 5. Android:如何让设备只运行一个应用程序?
- 6. 如何在Scala中保留一个对象在内存中?
- 7. 如何在linux应用程序中保留命令行空格?
- 8. iPhone应用程序版本 - 哪一个要保留?
- 9. PHP应用程序如何将数据保存在内存中?
- 10. 当应用程序关闭时,将Firebase侦听程序保留在内存中
- 11. 在laravel中为整个应用程序保留一个变量
- 12. 如何在Web应用程序运行时保留用于解密的密钥
- 13. 如何强制C#.net应用程序在Windows中只运行一个实例?
- 14. 如何保留应用程序数据?
- 15. 如何在内存中保留一个位图
- 16. 如何运行在一个ASP.NET应用程序一个C#主
- 17. 如何确保只有单个进程在线程中运行
- 18. 如何确保只有一个守护进程正在运行?
- 19. 即使应用程序未运行,我如何保存整数?
- 20. 如何保存上次应用程序运行时的日期?
- 21. 如何强制存储过程进行预缓存并保留在内存中?
- 22. 如何在Cocoa中运行另一个应用程序后运行我自己的应用程序?例如,
- 23. 在应用程序内保存密码
- 24. 如何确保只有我的应用程序的单个实例运行?
- 25. 保存在Eclipse中运行外部应用程序
- 26. 如果我的asp.net应用程序产生一个进程,该进程是否在asp.net应用程序运行的同一个应用程序域内运行?
- 27. 使用Python运行Excel宏(但Excel进程保留在内存中)
- 28. 创建一个运行一次只-Java应用程序
- 29. 即使在关闭MainWindow后,Qt应用程序仍保留在内存中
- 30. 如何让Java应用程序运行更多内存?
保存数组的含义是什么?你是否想永久保存它,或者你想保存到应用程序的生命周期? – Jim 2010-06-29 12:44:32
这个问题没有任何意义。也许你应该描述你的情况,你的意思是“保存” – jamone 2010-06-29 12:44:35
感谢jim我想保存它直到应用程序结束... – 2010-06-29 12:47:46