Cocoa-Cocoa开发中, 如何用全局变量保存当前实例状态

Cocoa-Cocoa开发中, 如何用全局变量保存当前实例状态

清晨说ぺ晚安 发布于 2017-08-02 字数 120 浏览 1105 回复 1

在Cocoa开发中,我想建立一个计数器,用来统计在不同界面中,各个按钮的点击次数,如何得到一个全局的变量来做这个记录?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夜无邪 2017-09-28 1 楼

可以用 appDelegate 这个对象来创建你的全局数据

这个内建的对象,在 APP 启动时产生,在 APP 退出时销毁

下面是实例
假设我们给这个变量定义的名字为 GlobalValue

在 IphoneViewAppDelegate.h 中加入下面的代码(加在 interface 外)

// 记录当次运行实例中 WebView 当前动作
@property (nonatomic, retain) NSString *GlobalValue;
在 IphoneViewAppDelegate.m 文件的前面加入下面的代码

// 记录当次运行实例中 WebView 当前动作
@synthesize GlobalValue;
在 IphoneViewController.m 文件的 - (void)viewDidLoad 方法中加入下面的代码

// 引入全局变量
IphoneViewAppDelegate appDelegate = (IphoneViewAppDelegate)[[UIApplication sharedApplication] delegate];
// 对变量写入
appDelegate.GlobalValue = @"loading";

在你的文件 *.m 任意一个地方,都可以通过
IphoneViewAppDelegate *appDelegate = (IphoneViewAppDelegate)[[UIApplication sharedApplication] delegate];
来获得这个全局的对象
然后可以对 appDelegate.GlobalValue 进行读写
在切换界面的过程中,也能读写这个变量,这个值会在退出 APP 时自动销毁