2011-09-22 88 views
0

在iPad上,textFieldShouldReturn不再工作。我有它的工作,直到五分钟前,突然没有调用方法...任何想法?下面是代码,唯一改变的是UITextView的通知......谢谢!textFieldShouldReturn不再工作

- (BOOL)textFieldShouldReturn:(UITextField *)tf 
{ 
NSString* newName = textField.text; 
textLabel.text = textField.text; 
NSLog(@"Called!"); 

newName = [newName stringByAppendingPathExtension:@"txt"]; 
NSString* newPath = [[currentFilePath stringByDeletingLastPathComponent] stringByAppendingPathComponent:newName]; 
NSLog(@"%@",newPath); 
[[NSFileManager defaultManager] moveItemAtPath:currentFilePath toPath:newPath error:nil]; 
[[NSNotificationCenter defaultCenter] postNotificationName:@"DataSaved" object:nil]; 
[currentFilePath retain]; 
currentFilePath = newPath; 
NSString *documentsDirectory = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]; 
[currentFilePath retain]; 
// Write out the contents of home directory to console 

NSLog(@"Documents directory: %@", [[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsDirectory error:nil]); 

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:0.5]; 
textLabel.alpha = 1.0; 
textField.alpha = 0.0; 
[UIView commitAnimations]; 
[tf resignFirstResponder]; 
return YES; 

}

+1

最好的可能性 - 你可能会不小心删除了文本框的委托。 – samfisher

+0

好吧,你是对的。如果你可以添加它作为答案,以便我可以接受它作为答案会很好;)非常感谢!创造了我的一天。 – Faser

+0

我很高兴..我可以帮助..! – samfisher

回答

5

最好的可能性 - 你可能会不小心删除的文本框的委托。

3

您在IOS 6 (BOOL)textFieldShouldReturn:(UITextField *)textField方法必须设置在厦门国际银行的textField委托,并写下了下面的代码:

(BOOL)textFieldShouldReturn:(UITextField *)textField{ 
    [textField resignFirstResponder]; 
    return YES; 
}