代码之家  ›  专栏  ›  技术社区  ›  Samuel

cocoa/objective-c:访问不同类中的(布尔)变量

  •  0
  • Samuel  · 技术社区  · 16 年前

    情况: NOOB/Xcode 3.1

    我有一个AppView(nsView子类)和一个AppController(nsObject子类)

    在appview.h中,我声明了一个布尔值(bool:booleandraw),在appview.m中将其设置为“no”。

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

    我搜索发现:用@property来做,好吧,我试过做,但没用。(因为我可能不完全知道该怎么做) 我做到了:

    @property BOOL booleanDraw;
    

    (在AppVIEW中)

    @implementation AppView
    
    @synthesize(readwrite, nonatomic) booleanDraw;
    

    (在AppVIEW中)

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

    (在appcontroller.m中)

    谢谢你的帮助,我已经读了一些教程,但他们经常建议一些基本的步骤,但不属于我的剧目,和ADN经常混淆我xd对不起,但相信我正在尝试^^

    1 回复  |  直到 16 年前
        1
  •  6
  •   Kendall Helmstetter Gelner    16 年前

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

    h:

    @property (nonatomic) booleanDraw;
    

    (默认情况下,属性为readwrite,只有当属性为readonly时才需要声明)

    m:

    @synthesize booleanDraw;
    

    在控制器中,您需要获得应用程序视图引用,除非您将“obj”设置为某个值,否则您发布的代码将无法工作。