当用户触摸特定的文本字段或文本视图时,如何将完成按钮添加到UINavigationbar?
或者更好的方法是检测键盘何时显示,然后显示按钮.
我希望完成按钮可以像标准Notes应用程序一样关闭键盘.
你可以尝试类似的东西:
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(doneEditing)];
[[self navigationItem] setRightBarButtonItem:doneButton];
[doneButton release];
}
Run Code Online (Sandbox Code Playgroud)
并且
- (void)textViewDidBeginEditing:(UITextView *)textView
{
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(doneEditing)];
[[self navigationItem] setRightBarButtonItem:doneButton];
[doneButton release];
}
Run Code Online (Sandbox Code Playgroud)
根据您的喜好定制以下内容
- (void)doneEditing {
[[self view] endEditing:YES];
}
Run Code Online (Sandbox Code Playgroud)
然后删除按钮- (void)textFieldDidEndEditing:(UITextField *)textField,也在- (void)textViewDidEndEditing:(UITextView *)textView
只记得设置代表!