2012-12-11 34 views
0

我使用的通知中心得到通知上的UITextField完成编辑后,这里是我的代码...问题与处理文本框完成编辑通知

[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(textFieldChange:) name:UITextFieldTextDidEndEditingNotification object:nil]; 

和我的功能...

-(void)textFieldChange:(id)sender{ 
UITextField *my=(UITextField *)sender; // NOT WORKING 

    if([my.text length]==0){ 
     UIAlertView *myAlert=[[UIAlertView alloc]initWithTitle:@"Please Fill This" message:@"This Field Can Not be Kept Empty!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil, nil]; 


    [myAlert show]; 

           } 
} 

这是什么问题? ,我觉得发件人没有在文本框中输入类型!

回答

1

,如果你想知道什么时候的UITextField将完成编辑,那么你可以通过下面的代码检查我的朋友。

- (BOOL)textFieldShouldEndEditing:(UITextField *)textField 

,如果你想让它使用NSNotification检查,然后尝试发送您的在对象参数文本框对象在调用 - (空)textFieldChange:(ID)发送方法,不发送零

我不是100%肯定这个,但你可以试试,

让我知道它是是否工作

快乐编码!

+0

但如果我必须给对象作为参数,那么我必须为每个textfields使用多个通知,那么我将它保留为零,并尝试键入发件人的投射。 – BaSha

+0

所以尝试使用第一个选项,我告诉过你,它将适用于任何数量的文本框我的朋友..-(BOOL)textFieldShouldEndEditing:(UITextField *)textField – NiravPatel

+0

谢谢你,第一个解决方案的工作! – BaSha