这可能是个愚蠢的问题,但我在文档中找不到答案.弹出式键盘上的"完成"按钮是否总是导致键盘消失?我在网上看到很多这样的代码:

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

当我按下"完成"按钮时,键盘弹出,UITextField人退出第一响应者.

我认为按下"完成"按钮并不会导致UITextFieldresignFirstResponder的变化,但这种行为在某个时候发生了变化.

我正在OS 3.0-3.1.3上调试

推荐答案

我用一个UITextField和这段代码做了一个小测试项目

#import <UIKit/UIKit.h>
@interface TextFieldTestViewController : UIViewController
<UITextFieldDelegate>
{
    UITextField *textField;
}
@property (nonatomic, retain) IBOutlet UITextField *textField;
@end

#import "TextFieldTestViewController.h"
@implementation TextFieldTestViewController
@synthesize textField;

- (void)viewDidLoad
{
    [self.textField setDelegate:self];
    [self.textField setReturnKeyType:UIReturnKeyDone];
    [self.textField addTarget:self
                  action:@selector(textFieldFinished:)
        forControlEvents:UIControlEventEditingDidEndOnExit];
    [super viewDidLoad];
}
- (IBAction)textFieldFinished:(id)sender
{
    // [sender resignFirstResponder];
}

- (void)dealloc {
    [super dealloc];
}
@end

文本字段是一个未修改的UITextField,拖到笔尖上,并连接插座

Objective-c相关问答推荐

iPhone 可达性判断

如何删除警告按钮的框架在运行时会有所不同.

在 iOS 中检测 PAN 手势的方向

在 Objective C 中将属性标记为已弃用

在 Objective C 中动态调用类方法

当我从导航控制器推送时如何隐藏导航栏?

将长格式的 NSString 拆分为多行

Container View 好像有 UINavigationBar 一样被下推?

Xcode:可以为协议接口所需的方法自动创建存根吗?

xcode storyboard Container View - 如何访问视图控制器

声音在 iPhone 模拟器中不起作用?

ios 11 UITabBar UITabBarItem 定位问题

判断 NSNumber 是否为 NaN

获取包含在 NSString 中的文件的扩展名

iOS是静态框架还是动态框架?

-fembed-bitcode 在 6.0 之前的 iOS 版本上不受支持

Objective-c 协议前向声明

iOS:开源 VoIP/SIP Objective-C 代码

Xcode 警告未使用属性访问结果 - getter 不应用于副作用

如何将 printf 与 NSString 一起使用