2016-07-22 21 views
1

Dies ist meine Methode zum Eingeben von irgendetwas in TextField, aber die Kopfzeile ist nicht im Header sichtbar.Code funktioniert nicht beim Eingeben von UITextField der Button nicht sichtbar?

- (BOOL) textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 

    NSUInteger finalLenght = textField.text.length - range.length + string.length; 
    //SearchBtn.hidden = (finalLenght == 0); 

    if (finalLenght==0) { 
     self.navigationItem.rightBarButtonItem = nil; 
    }else{ 
     UIButton *SearchBtn = [UIButton buttonWithType:UIButtonTypeCustom]; 
     [SearchBtn setTitle:CustomLocalizedString(@"FIND CVS") forState:UIControlStateNormal]; 
     [SearchBtn addTarget:self action:@selector(actionFindJobs:) forControlEvents:UIControlEventTouchUpInside]; 
     SearchBtn.frame = CGRectMake(0, 0, 80, 30); 
     SearchBtn.hidden = YES; 
     self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:SearchBtn]; 
    } 
    return YES; 
} 
+0

Wenn ich auf UITextField klicke und irgendetwas in UITextField eintippe, damit diese Methode nicht aufruft, was ist der Grund, warum ich nie verstehe? –

+0

Haben Sie textField.delegate = self eingestellt? ? – Hussein

+1

Ja, das ist Delegat Problem Ich habe es zu lösen dieses Problem Freund –

Antwort

0

Wie wäre diese Veränderung:

SearchBtn.hidden = YES; 

zu:

SearchBtn.hidden = NO; 
+0

Ich versuche, aber nicht funktioniert, –

0

Bitte überprüfen Sie mit folgenden Code

[SearchBtn setEnabled:YES]; 

oder

[SearchBtn setEnabled:NO]; 
+0

nicht funktioniert dies auch Freund –