弹出键盘,输入框上移问题 iOS

viewDidLoad 中添加监听

[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardShow:) name:UIKeyboardWillShowNotification object:nil];

[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardHidden:) name:UIKeyboardWillHideNotification object:nil];

实现两个监听方法

- (void)keyboardShow:(NSNotification *)notification{

if(currentTextField.tag >= 1000){

CGSize size = [[notification.userInfo objectForKey:UIKeyboardFrameEndUserInfoKey]CGRectValue].size;//键盘大小

CGFloat keyBoardHeight = size.height+10;//键盘高度,富余10点高度

// screenHeight 手机屏幕总高度, 64是导航栏的高度, currentTextField.bottomY 当前textField的底部位置,

CGFloat shouldMoveHeight = keyBoardHeight-( screenHeight - 64-currentTextField.bottomY);

if(shouldMoveHeight > 0){

_bgScrollView.contentOffset = CGPointMake(0, shouldMoveHeight);

}

}

}

- (void)keyboardHidden:(NSNotification *)notification{

_bgScrollView.contentOffset = CGPointMake(0, 0);

}

- (void)dealloc

{

[[NSNotificationCenter defaultCenter]removeObserver:self];

}

时间: 2024-11-10 11:24:24

弹出键盘,输入框上移问题 iOS的相关文章

IOS键盘弹出文本输入框上移

刚开始做IOS,做的不好,还望朋友们多多指教,谢谢! #import "ViewController.h" @interface ViewController ()<UITextFieldDelegate> { UIView *activeView; UITextField *textField; float keyBoardHeight; float w, h; } @end @implementation ViewController - (void)viewDidLo

IPhone手机页面中点击文本输入框,弹出键盘,网页会放大,如何解决

在head标签中加入以上meta声明.具体属性可以谷歌/百度. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> 我查了下viewport,有几个属性:width - viewport的宽度 height - viewport的高度initial-scale - 初始的缩放比例minim

IOS开发之自定义系统弹出键盘上方的view

IOS开发之自定义系统弹出键盘上方的view 分类: IOS 2014-11-18 09:26 1304人阅读 评论(0) 收藏 举报 目录(?)[+] 这篇文章解决的一个开发中的实际问题就是:当弹出键盘时,自定义键盘上方的view.目前就我的经验来看,有两种解决方法.一个就是利用 UITextField或者UITextView的inputAccessoryView属性,另一种,就是监听键盘弹出的notification来自 己解决相关视图的位置问题. 第一种解决方法相对比较简单,第二种的方法中

IOS问题汇总:2014-12-2 xcode6中iphone5模拟器中运行textfield不弹出键盘+点击return收键盘

1.xcode6中iphone5模拟器中运行textfield不弹出键盘 Hardware->Keyboard->Toggle Software Keyboard手动激活键盘 2.点击return收键盘(1)按住Ctrl,选中TextField,拖拽至ViewController使二者连接.(2)在.h中@interface那行添加.(3)在.m中添加代码: -(BOOL) textFieldShouldReturn:(UITextField *)textField{if (textField

让UIWebView弹出键盘上的按钮显示中文

UIWebView是一个很常用的视图,一般用来加载网页,比如百度: 点击文本框输入框后,会弹出一个带有toolbar的键盘,toolbar中有3个辅助按钮 有了这3个按钮,是方便很多,但默认是英文的,有时我们想把按钮文字变为中文 其实办法很简单,只需要让你的应用程序支持中文本地化,意思是在项目中新建一个中文的本地化文件夹zh-Hans.lproj 如果还不太了解什么叫本地化,可以看看我的这篇文章<应用程序本地化> 下面简单演示下操作步骤: 1.添加中文本地化支持 2.选择要支持本地化的文件,至

弹出键盘windowsoftinputmode属性设置值

windowSoftInputMode属性设置值 2012-08-30 16:49 1592人阅读 评论(0) 收藏 举报 androidattributes活动 (1).AndroidManifest.xml文件中界面对应的<activity>里加入            android:windowSoftInputMode="adjustPan"   键盘就会覆盖屏幕            android:windowSoftInputMode="state

Android弹出键盘布局闪动原理和解决

弹出键盘布局闪动原理和解决 在开发中,遇到一个问题:做一个微信一样,表情输入和软键盘在切换的时候,聊天界面不闪动的问题.为了解决这个问题,需要知道一下Android的软键盘弹出的时候发生的几个变化. 当AndroidMainfest.xml 中配置android:windowSoftInputMode="adjustResize|stateHidden" 属性后,如果弹出软键盘,那么会重绘界面.基本流程如下(API 10): 1.  Android 收到打开软键盘命令 2.  Andr

JavaScript基础 window.prompt() 弹出一个输入框 设置提示信息与默认值

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=ut

UI弹出键盘和收回键盘

点击textfield,会自动弹出键盘 要让键盘收回来,先设置个代理:[field setTextFieldDelegate:self];  可设置成自己,也可设置成其他对象,只要在对应的类中,遵循UITextFieldDelegate协议 在UITextFieldDelegate协议中,有一些可选的方法: //点击return回收键盘 - (BOOL)textFieldShouldReturn:(UITextField *)textField{ [textField resignFirstRe