0

基本的に私は C# 開発者ですが、ここ数日で Objective-C の学習を開始しました。

ここで、クラスを作成し、インスタンス変数 (プロパティ) をUIControlビューの s 値 (UITextField文字列値など) にリンクする必要がある演習を行う必要があります。

IBOutletつまり、目的の s を ViewControler に既に実装しており、このコントローラー内で、作成したクラスのインスタンスを作成します。C# では、クラスは INotifyPropertyChanged インターフェイスを実装し、クラスをコントロールにバインドして、Datasource値が変更されたときにオブジェクトに通知できます。

Objective C でこの概念に相当するものはありますか? または、すべての値が変更されたときにイベントを介してのみ、そのようなことをどのように達成できますControlか?

ありがとうございました。

4

2 に答える 2

0

あなたがあなたの質問から何を求めているのか100%確信が持てません。モデルが変更されたときにViewControllerビューを自動更新できるかどうかを尋ねていますか?

オブジェクト/クラスなどの間で通知を提供するためのさまざまなメカニズムがたくさんあります。主なものは次のとおりです(完全を期すためにおそらく知っているIBActionを含めました):

1)IBAction-UIViewControllerクラスでIBOutletsを接続したのと同じように、UIコントロールの場合、ユーザーの操作でイベント(タッチアップ/タッチダウンなど)を発生させることもできます。

2)NSNotification-これらはほとんどどこにでも投稿できます。

http://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSNotificationCenter_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40003701

3)Key-Valueの観察:

http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving.html#//apple_ref/doc/uid/10000177i

于 2012-07-04T18:31:01.100 に答える
0

あなたの質問と文法は少しあいまいですが、カスタム (手動) プロパティのゲッター/セッターが必要なようです。これを試して:

@intrface AClass: NSObject {
    int iVar;
}

@property (nonatomic, assign) int iVar;

@end

@implementation AClass

- (int)iVar
{
    // notify object of value being read, then:
    return iVar;
}

- (void)setIVar:(int)_iVar
{
    iVar = _iVar;
    // then notify object about property being set
}

@end
于 2012-07-04T18:24:33.963 に答える