Vickate_iOS_键盘监听

来源:互联网 发布:淘宝店铺视觉设计 编辑:程序博客网 时间:2024/05/16 23:36

1.先创建一个输入框

    self.textField = [[UITextField alloc] initWithFrame:CGRectMake(10, 5, ScreenWidth - 70, 30)];    self.textField.borderStyle = UITextBorderStyleRoundedRect;    self.textField.backgroundColor = [UIColor whiteColor];    self.textField.placeholder = @"输入评论...";    self.textField.font = [UIFont fontWithName:@"Arial" size:13.0f];    self.textField.clearButtonMode = UITextFieldViewModeAlways;    self.textField.returnKeyType = UIReturnKeyGo;    self.textField.delegate = self;    [self.view addSubview:self.textField];

2.添加观察者

[[NSNotificationCenter      defaultCenter] addObserver:self selector:@selector(keyboardWillChangeFrame:)     name:UIKeyboardWillChangeFrameNotification object:nil];//在这里注册通知

3.实现监听方法

NSDictionary *userInfo = notification.userInfo;    // 动画的持续时间    double duration = [userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];    // 键盘的frame    CGRect keyboardF = [userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];    // 执行动画    [UIView animateWithDuration:duration animations:^{        // 工具条的Y值 == 键盘的Y值 - 工具条的高度        if (keyboardF.origin.y > self.view.height) { // 键盘的Y值已经远远超过了控制器view的高度            self.critiqueView.y = self.view.height - self.critiqueView.height;//这里的style="background-color: rgb(240, 240, 240);"self.toolbar就是我的输入框。        } else {            self.critiqueView.y = keyboardF.origin.y - self.critiqueView.height;        }    }];
0 0
原创粉丝点击