Ela*_*adG 5 iphone macos ios4 ios
目前我在AppDelegate类上使用了一个Property.
现在,随着我的需求消耗,我需要更多的这些全局属性,所以我想创建一个Singleton类,它将保存属性并将管理它们.我发现了很多关于单身人士的信息,但我无法弄清楚,是否有可能在没有班级实例的情况下修改该属性?
例如:
@interface Tools : NSObject
@property (nonatomic,retain) NSDictionary* item;
...
@end
Run Code Online (Sandbox Code Playgroud)
我想要做:
[Tools setItem:someDict];
someClass = [someClass alloc] initWithItem:[Tools getItem]];
Run Code Online (Sandbox Code Playgroud)
我的所有想法最终都遇到了类Tools没有实例的问题.我已经尝试将项目设置为静态变量(不是属性),这有效,但我确信这不是正确的原因.
相关但不同的问题,添加:
#import "Tools.h"
Run Code Online (Sandbox Code Playgroud)
对于项目-Prefix.pch文件,所以项目属性将从项目的任何地方可用,是个好主意?
你是对的,你需要一个实例来使用单例.但问题出在哪里?
[Tools sharedInstance].item = someDict; // or
[[Tools sharedInstance] setItem:someDict;
Run Code Online (Sandbox Code Playgroud)
然后,sharedInstance方法确保正确实例化一个且仅有Tools实例.我习惯了.另一种选择是成员.你可以看一下这个帖子:
| 归档时间: |
|
| 查看次数: |
5171 次 |
| 最近记录: |