0

ビューに複数のUITextFieldがあります。

ユーザーがUITextFieldから出てきたら、UITextFieldの値をキャプチャする場所は、デリゲートメソッド「textFieldShouldReturn」を実装することだと思います。

質問-" textFieldShouldReturn"では、どのUITextFieldがこれをトリガーしたかをどのように判断できますか?

たとえば、この段階でUITextFieldが表示する値でデータモデルを更新する必要があると仮定すると、モデル内の正しいフィールドをその特定のUITextFieldに合わせて更新する必要があります。

PSより良いアプローチ、または一種の「拘束力のある」アプローチが欠けている場合、私は興味があるでしょう

4

1 に答える 1

5

...または、すべてのタグをスキップしてUITextViewsインスタンス変数を作成し、次の操作を行うことができます。

- (void)viewDidLoad {
    myTextView1 = [[UITextView alloc] init];
    myTextView2 = [[UITextView alloc] init];
    myTextView3 = [[UITextView alloc] init];
    myTextView4 = [[UITextView alloc] init];
    ......
}

- (void)textFieldShouldReturn:(UITextField *)textField {
    BOOL shouldReturn = NO;

    if (textField == myTextView1)
    {
        shouldReturn = YES;
    }

    ...and so on...

    }

... release the instance vars in the dealloc...

私はちょっとこの方法が好きですが、他の答えもうまくいきます。

于 2011-10-06T05:08:59.247 に答える