IOS 防止键盘遮挡文本框

原创 2013年12月04日 13:55:51

在开发中我们经常会碰到键盘遮挡文本框的问题,在这里总结一下解决方法

将文本框的delegate设置为File's Owner或者使用代码textField.delegate=self;

在文本输入框所对应的类中实现UITextFieldDelegate协议,然后在其.m文件中实现UITextFieldDelegate的三个方法,三个方法代码如下:

-(void)textFieldDidBeginEditing:(UITextField *)textField{
    CGRect frame=textField.frame;
    //frame.origin.y+32//文本框的位置与文本框的高度,32取文本框的高度
    //self.view.frame.size.height-216//view减去键盘高度,如果offset大于零表示有遮挡,否则表示没有遮挡
    int offset=frame.origin.y+32-(self.view.frame.size.height-216);//键盘高度 216
    
    NSTimeInterval animationDuration=0.20f;
    [UIView beginAnimations:@"ResetForKeyboard" context:nil];
    [UIView setAnimationDuration:animationDuration];
    if(offset>=0){
        self.view.frame=CGRectMake(0.0f, -offset, self.view.frame.size.width, self.view.frame.size.height);
        [UIView commitAnimations];
    }
}
//点击return 隐藏键盘
-(BOOL)textFieldShouldReturn:(UITextField *)textField{
    [textField resignFirstResponder];
    return YES;
}
//结束编辑的时候返回
-(void)textFieldDidEndEditing:(UITextField *)textField{
    self.view.frame=CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

iOS 键盘遮挡文本框

在iOS上,输入法键盘不会和Android一样,点击空白处自动收回,系统也不会帮忙处理键盘遮挡住文本框的问题。 这在对于很多刚入门的同学来说,处理起来是有一定困难的。即使已入门的开发者,也是相当繁琐的...

ios开发防止键盘遮住文本框

由于刚接触项目,发现当文本框太下时或给键盘遮住,看不到输入的内容,因此做一下学习记录,本人刚写博客,希望不足之前请各位指出。 在IOS开发中,如果输入框(UITextFiled)在界面的下半部分,那...
  • alhan
  • alhan
  • 2013年07月23日 16:54
  • 4058

iOS为文本框定制二级键盘

  • 2015年09月07日 23:17
  • 79KB
  • 下载

【iOS开发-15】UITextField常用属性归纳:文本框样式、文字样式、键盘样式、左右视图样式、清除按钮设置等

(1)可以根据需要设置文本框的样式(包括形状、边框颜色、背景等) (2)可以根据需要设置文字显示样式(包括输入密码时的密文显示、文字横向居中、纵向居中上下、输入的文字是否首席木大写、文字超过后是否缩小...

iOS 开发 UITextField常用属性:文本框样式、文字样式、键盘样式、左右视图样式、清除按钮设置等

参考:UITextField常用属性:文本框样式、文字样式、键盘样式、左右视图样式、清除按钮设置等UITextField 常用属性:(1)可以根据需要设置文本框的样式(包括形状、边框颜色、背景等)。(...

iOS键盘与文本框的处理(二)

上文,我们叙述来了键盘与文本框最简单的情况,接下来,我们来讲一讲在tableview中多个文本框与键盘的处理。我们在每一行cell都添加上了文本框,cell过多的话是可以滚动的,这里的textfiel...
  • J_Kang
  • J_Kang
  • 2016年07月26日 20:19
  • 266

iOS开发 UITextView(多行文本框)控件的一些用法(显示文字 退出键盘等)

1.创建并初始化 创建UITextView的文件,并在.h文件中写入如下代码: [csharp] view plaincopy   #import   ...

iOS中键盘与文本框的处理(一)

很多情况下,我们在处理文本框的时候,都得考虑到,如果键盘出现了,会不会将键盘给盖住。如果盖住了,我们就得调整一下文本框的位置。那我们来设置一下我们的思路。首先,我们要知道键盘的坐标是怎么处理的。如下图...
  • J_Kang
  • J_Kang
  • 2016年07月25日 22:47
  • 955

iOS文本框样式,键盘样式,清除按钮设置,左右视图

(1)可以根据需要设置文本框的样式(包括形状、边框颜色、背景等)。 (2)可以根据需要设置文字显示样式(包括输入密码时的密文显示、文字横向居中、纵向居中上下、输入的文字是否首席木大写、文字超过...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IOS 防止键盘遮挡文本框
举报原因:
原因补充:

(最多只允许输入30个字)