Text from UITextFieldTextDidChangeNotification
Asked Answered
I

1

10

I have a UITextField with this NSNotification:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFieldDidChange:) name:@"UITextFieldTextDidChangeNotification" object:_searchTextField];

- (void)textFieldDidChange :(NSNotification *)notif 
    {
     //
    }

The NSLog is when I type in r

NSConcreteNotification 0x193c20 {name = UITextFieldTextDidChangeNotification; object = <UITextField: 0x15a980; frame = (20 20; 280 31); text = 'r'; clipsToBounds = YES; opaque = NO; autoresize = RM+BM; layer = <CALayer: 0x15aad0>>}

How do I get the text r out of the notif object?

Iridectomy answered 31/3, 2012 at 9:41 Comment(1)
You should use the constant UITextFieldTextDidChangeNotification (declared in UITextField.h) instead of passing your own NSString as the "name" argumentGoggin
C
16

The notification's object property stores the text field whose text changed, so notif.object.text would contain the text "r".

Condensate answered 31/3, 2012 at 9:45 Comment(3)
Its giving an error - Property 'text' not found on object of type 'id'Iridectomy
Do [(UITextField*)notif.object text] insteadCondensate
Ah yep, so I had to: UITextField* txt = (UITextField*)notif.object; NSlog(@"%@",txt.text);Iridectomy

© 2022 - 2024 — McMap. All rights reserved.