ユーザーが入力できる文字数を制限しようとしています。私はそれが機能していますが、唯一の問題は、キーボードが閉じなくなったことです。たとえば、入力を 3 文字に制限したい場合、キーボードで 2 文字を入力して [完了] を押すとキーボードが閉じますが、3 文字を入力して [完了] を押しても、キーボードは理由についてのアイデアを閉じませんか?
ここに私のコードがあります
(void)viewDidLoad
{
NSLog(@"%@", self.chosenTime);
[self startGame];
[super viewDidLoad];
self.nameTextField.delegate = self;
NSLog(@"%@", self.playerName);
NSString *timeString = self.chosenTime;
self.timer = [timeString intValue];
self.timeSelected = [timeString intValue];
self.scoreTimer = 1000;
self.countdown.text = timeString;
// Do any additional setup after loading the view.
}
- (IBAction)hideKeyboard:(id)sender {
NSLog(@"Hello");
[self.nameTextField resignFirstResponder];
}
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
self.playerName = [textField.text stringByReplacingCharactersInRange:range withString:string];
return !([self.playerName length] >= 4);
}