0

私は uiviews からビュー コントローラーにあるいくつかの変数を変更する必要がある目標 C のプロジェクトに取り組んでいます。

だから私はこのようなことを試しました:

ViewController.h :

@property (nonatomic) bool Contact;

UIViews の 1 つ:

ViewController * View;
View.Contact = YES;

また、 ViewController で次のようなセッター メソッドを作成しようとしました。

-(void) SetterContact:(bool)boolean;

したがって、次のように UIView から変更するには:

[View SetterContact:YES];

しかし、それは機能しているように見えます。変数が含まれているオブジェクトを初期化する必要があることを読みましたが、メモリ管理では、既にアクティブになっているオブジェクトからいくつかの初期化を行うのはあまり良くありませんか? ビューが既に初期化されている場合、別の UIView から init メソッドを呼び出すつもりはありませんか?

ご協力いただきありがとうございます !

4

3 に答える 3

0
  1. 命名規則を尊重する
    @property (nonatomic,retain) UIViewController *myController;

合成することを忘れないでください
@synthesize myController = _myController;

  1. 独自のセッターを実装する場合は、次のようにします。命名規則を尊重してください。
    -(void)setMyController:(UIViewController*)controller;

  2. または、何らかの奇妙な理由で命名規則を尊重できない場合は、プロパティを必要なメソッドにポイントできます
    @property (nonatomic,retain,setter=myBizarreSetterMethod:) UIViewController *myController;

これは、スタックオーバーフローでの質問にも役立ちます

于 2013-06-09T22:48:01.727 に答える
0

@property (nonatomic, assign, getter = isContact) BOOL contact;.h ファイルで使用します。

于 2013-06-10T03:38:35.470 に答える