objective-c - cocoa /Objective-C : Access a (Boolean) variable in different Classes

标签 objective-c cocoa class variables

情况: Noob/Xcode 3.1

我有一个AppView(NSView子类)和一个AppController(NSObject子类)

在AppView.h中我声明了一个 bool 值(BOOL:booleanDraw),我在AppView.m中将其设置为“NO”

当单击按钮时,它会“启动”一个操作(AppController .h/.m),现在我想在单击按钮时将 booleanDraw 更改为 YES。

我搜索并发现:用 @property 来做,好吧,我尝试这样做,但没有成功。 (因为我完全不知道该怎么做) 我做了:

@property BOOL booleanDraw;

(在 AppView.h 中)

@implementation AppView

@synthesize(readwrite, nonatomic) booleanDraw;

(在 AppView.m 中)

AppView *obj;
obj.booleanDraw = YES;  // implicitly calls [obj setVar:3]

(在 AppController.m 中)

感谢您的帮助,我已经阅读了一些教程,但他们经常建议一些应该是基本的步骤,但不属于我的技能范围,而且 ADN 经常让我感到困惑 xD 抱歉,但相信我正在尝试^^

最佳答案

您刚刚颠倒了综合和属性语句:

在.h中:

@property (nonatomic) booleanDraw;

(默认属性是可读写的,只读时只需声明即可)

以 .m 为单位:

@synthesize booleanDraw;

在 Controller 中,您需要获取应用程序 View 引用,除非您将“obj”设置为某些内容,否则您发布的代码将不起作用。

关于objective-c - cocoa /Objective-C : Access a (Boolean) variable in different Classes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2089960/

相关文章:

objective-c - 字符串不会在 iOS 中进行 url 编码

ios - Form C 头文件 "' 矢量'文件未找到“错误发生在 swift 中

objective-c - NSUserDefaults。 setValue 有效,而不是 setBool

java - 应用程序中的 webview 是否缓存页面?

swift - 窗口在所有空间可见(包括其他全屏应用程序)

cocoa - 在 NSView-drawRect : method? 中画线的首选/推荐方法是什么

objective-c - 如何在 CAShapeLayer 上添加外发光

vb.net - 触发自定义类事件后,表单未更新

python - 使用类实例作为类属性、描述符和特性

java - 通过创建对象为其他类的数组赋值