Tôi muốn thay đổi UITextInputTraits của một bàn phím trong khi nó đang được sử dụng ....Có thể thay đổi UITextInputTraits khi đang xem UIKeyboard không?
My lý tưởng mã sẽ giống như thế này:
- (IBAction)nameTextDidChange:(UITextField *)sender {
if ([sender.text isEqualToString:@""]) {
sender.returnKeyType = UIReturnKeyDone;
} else {
sender.returnKeyType = UIReturnKeySearch;
}
}
Vì vậy ... Tôi có một khác nhau Nút 'Return' cho một chuỗi rỗng khi tôi làm một chuỗi với một số văn bản. Mã tôi đăng ở trên không hoạt động, bàn phím vẫn giữ lại các đặc điểm đầu vào văn bản gốc của nó.
Bất kỳ ý tưởng nào, hoặc điều này sẽ không bao giờ hoạt động bất kể tôi có cố gắng không?
Chúc mừng!
Nick.
Nhờ Deepak, đây là đoạn code tôi thực sự được sử dụng:
if ([sender.text isEqualToString:@""]) {
sender.returnKeyType = UIReturnKeyDone;
[sender resignFirstResponder];
[sender becomeFirstResponder];
} else if (sender.returnKeyType == UIReturnKeyDone) {
NSString *cachedLetter = sender.text;
sender.returnKeyType = UIReturnKeySearch;
[sender resignFirstResponder];
[sender becomeFirstResponder];
sender.text = cachedLetter;
}
Thiên tài, cảm ơn rất nhiều vì điều này. Nó làm việc gần như hoàn hảo .. điều duy nhất mà không làm việc là khi bạn từ chức một bàn phím, bạn mất văn bản trong UITextField - vì vậy tôi chỉ cần có bộ nhớ cache đó! Tôi sẽ đăng mã chính xác mà tôi đã sử dụng trong câu hỏi của mình cho người khác. –