zoukankan      html  css  js  c++  java
  • ios中键盘处理适合ipad 和iphone

      
      [[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(keyboardWasShown:)
                                                     name:UIKeyboardDidShowNotification object:nil];
    
        [[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(keyboardWasHidden:)
                                                     name:UIKeyboardDidHideNotification object:nil];
    
    =======
    -(void)keyboardWasShown:(NSNotification*)aNotification{
        
        NSDictionary *info=[aNotification userInfo];
    
        CGRect KeyBoardrect=[info[UIKeyboardBoundsUserInfoKey] CGRectValue];
        int curve=[info[UIKeyboardAnimationCurveUserInfoKey] intValue];
        CGFloat duration=[info[UIKeyboardAnimationDurationUserInfoKey] floatValue];
        UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow];
         UIView *firstResponder = [keyWindow performSelector:@selector(firstResponder)];
         if ([NSStringFromClass([firstResponder class]) isEqualToString:@"UITextView"]) {
    
             CGFloat height=self.view.bounds.size.height;//view的高度
             CGFloat y=self.remarksTextView.frame.origin.y+KHeight;//文本框的高度
             CGFloat keyboardheight=KeyBoardrect.size.height+44;//键盘高度--》中文高度44
             CGFloat h=height-y-keyboardheight;
             NSLog(@"%@--keyboard->",info);
             NSLog(@"height=%f-- -->",height);
             
             if(h<0){
                 [UIView beginAnimations:nil context:nil];
                 [UIView setAnimationCurve:curve];
                 [UIView setAnimationDuration:duration];
                 CGRect rect=self.view.frame;
                 rect.origin.y+=h;
                 self.view.frame=rect;
                 [UIView commitAnimations];
             }
         }
    }
    
    -(void) keyboardWasHidden:(NSNotification*)aNotification
    {
        NSDictionary *info=[aNotification userInfo];
    
        int curve=[info[UIKeyboardAnimationCurveUserInfoKey] intValue];
        CGFloat duration=[info[UIKeyboardAnimationDurationUserInfoKey] floatValue];
        
        [UIView beginAnimations:nil context:nil];
        [UIView setAnimationCurve:curve];
        [UIView setAnimationDuration:duration];
        self.view.frame=_lastRect;
        [UIView commitAnimations];
    
    }
  • 相关阅读:
    WebActivatorEx
    autofac
    svn: E230001: Server SSL certificate verification failed
    uml 关系
    PowerDesigner生成PHP代码 UML
    linux 命令
    jQuery ajax跨域调用出现No Transport
    2015年终总结
    php+apache配置
    Memcached
  • 原文地址:https://www.cnblogs.com/gcb999/p/3232986.html
Copyright © 2011-2022 走看看