视图不能成为第一响应者

Sen*_*neL 2 first-responder ios

我有一个视图控制器.它是由另一个人推动的UINavigationController.在ViewController.m中:

- (BOOL)canBecomeFirstResponder { 
    return YES;
}

- (void)viewDidAppear:(BOOL)animated {
    [self.view becomeFirstResponder];
    NSLog(@"%d", [self.view isFirstResponder]);
    [super viewDidAppear:animated];
}
Run Code Online (Sandbox Code Playgroud)

它总是0.为什么?

jrt*_*ton 6

您的视图必须接受第一响应者状态.这是在您的视图的子类代码中实现的,您必须覆盖canBecomeFirstResponder并返回YES:

- (BOOL)canBecomeFirstResponder 
{ 
    return YES; 
} 
Run Code Online (Sandbox Code Playgroud)