实现效果:

textview 能够跟随键盘的移动而移动

效果图如下:

下边贴上主要的代码:

1.创建textview

@interface ViewController ()<UITextViewDelegate>
@property(nonatomic,strong)UITextView *textView;
@end

2.

- (void)viewDidLoad {
[super viewDidLoad];
_textView = [[UITextView alloc]initWithFrame:CGRectMake(,[UIScreen mainScreen].bounds.size.height- , [UIScreen mainScreen].bounds.size.width-, )];
_textView.delegate = self;
_textView.backgroundColor = [UIColor redColor];
[self.view addSubview:_textView]; //设置两个通知
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyHiden:) name: UIKeyboardWillHideNotification object:nil];
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyWillAppear:) name:UIKeyboardWillChangeFrameNotification object:nil]; }

3.实现监听

#pragma mark-键盘出现隐藏事件
-(void)keyHiden:(NSNotification *)notification
{
// self.tooBar.frame = rect;
[UIView animateWithDuration:0.25 animations:^{
//恢复原样
_textView.transform = CGAffineTransformIdentity;
// commentView.hidden = YES;
}]; }
-(void)keyWillAppear:(NSNotification *)notification
{ //获得通知中的info字典
NSDictionary *userInfo = [notification userInfo];
CGRect rect= [[userInfo objectForKey:@"UIKeyboardFrameEndUserInfoKey"]CGRectValue];
// self.tooBar.frame = rect;
[UIView animateWithDuration:0.25 animations:^{
_textView.transform = CGAffineTransformMakeTranslation(, -([UIScreen mainScreen].bounds.size.height-rect.origin.y));
}]; }

如果想点击空白处收回键盘的话

//点击空白处收起键盘
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
[_textView resignFirstResponder];
}

这样就可以实现图片中的效果了

转载请注明出处  尊重劳动成果

想要demo的可以联系我邮箱   673658917@qq.com

ios textView跟随键盘的移动的更多相关文章

  1. 【转】swift实现ios类似微信输入框跟随键盘弹出的效果

    swift实现ios类似微信输入框跟随键盘弹出的效果 为什么要做这个效果 在聊天app,例如微信中,你会注意到一个效果,就是在你点击输入框时输入框会跟随键盘一起向上弹出,当你点击其他地方时,输入框又会 ...

  2. swift实现ios类似微信输入框跟随键盘弹出的效果

    封面(图文无关) 为什么要做这个效果 在聊天app,例如微信中,你会注意到一个效果,就是在你点击输入框时输入框会跟随键盘一起向上弹出,当你点击其他地方时,输入框又会跟随键盘一起向下收回,二者完全无缝连 ...

  3. Xamarin的不归路-ios模拟器没有键盘

    ios模拟器没有键盘解决方案: 勾选上就有了. 2016年9月1日

  4. ios如何判断键盘是否已经显示

    ios如何判断键盘是否已经显示   在群里看到有人问:ios如何判断键盘已经显示在界面上. 其实这个解决很简单: 写一个单例来管理键盘的状态. 这个单例在初始化方法init种监听2个事件,分别是 UI ...

  5. IOS中input键盘事件支持的解决方法

    欢迎大家去我的网站详细查看http://genghongshuo.com.cn/ IOS中input键盘事件keyup.keydown.等支持不是很好, 用input监听键盘keyup事件,在安卓手机 ...

  6. Xamarin iOS教程之键盘的使用和设置

    Xamarin iOS教程之键盘的使用和设置 Xamarin iOS使用键盘 在文本框和文本视图中可以看到,当用户在触摸这些视图后,就会弹出键盘.本节将主要讲解键盘的输入类型定义.显示键盘时改变输入视 ...

  7. iOS Swift WisdomKeyboardKing 键盘智能管家SDK

    iOS Swift WisdomKeyboardKing 键盘智能管家SDK [1]前言:    今天给大家推荐个好用的开源框架:WisdomKeyboardKing,方面iOS日常开发,优点和功能请 ...

  8. ios下虚拟键盘出现"搜索"字样

    最近在开发过程中,发现用户输入想要检索的内容,弹出虚拟键盘,在安卓机上虚拟键盘最右下角会有‘搜索’字样,而ios上虚拟键盘最右下角只有‘换行’字样, 这样用户体验就会大打折扣. 安卓机上虚拟键盘 io ...

  9. ios在数字键盘左下角添加“完成”按钮的实现原理

    本文转载至 http://www.itnose.net/detail/6145865.html 最近要在系统弹出的数字键盘上的左下角额外添加一个自定制的完成按钮,于是研究了一下系统自带键盘添加自定制按 ...

随机推荐

  1. Virtual DOM 真的比操作原生 DOM 快吗?

    附上尤大的回答链接链接:https://www.zhihu.com/question/31809713/answer/53544875

  2. python数据处理(四)之数据获取与存储

    1.前烟 几个数据问题 1.1 是否能够联系上作者本人 1.2 数据是否定期检查错误并更新 1.3 数据是否包含数据获取方法的信息,是否包含数据获取过程中使用的样本类型 1.4 有没有其他数据源可以验 ...

  3. 数据可视化之DAX篇(十七)Power BI表格总计行错误的终极解决方案

    https://zhuanlan.zhihu.com/p/68183990 我在知识星球收到的问题中,关于表格和矩阵(以下统称表格)总计行错误算是常见的问题之一了,不少初学者甚为不解,在Excel透视 ...

  4. 【IDEA】创建maven项目,webapp没有被标识,无法识别

    问题描述 新建maven项目模块后,webapp目录未被标识,也就是没有小蓝点的图标显示. 解决方法 点击"File"下的"Project Strucure", ...

  5. 开源|如何开发一个高性能的redis cluster proxy?

    文|曹佳俊 网易智慧企业资深服务端开发工程师 背    景 redis cluster简介 Redis cluster是redis官方提供集群方案,设计上采用非中心化的架构,节点之间通过gossip协 ...

  6. 关于Haskell计算斐波那契数列的思考

    背景 众所周知,Haskell语言是一门函数式编程语言.函数式编程语言的一大特点就是数值和对象都是不可变的,而这与经常需要对状态目前的值进行修改的动态规划算法似乎有些"格格不入", ...

  7. “我放弃了年薪20万的offer…”

    最近身边朋友换工作.转型的越来越多.爬到一定高度,或者说到了一定年龄,每个选择都显得尤为重要.不仅因为高昂的机会成本,还有大家对后续规划的多重考虑.有一个说法你可能听过:混职场,要拥有不可替代的能力. ...

  8. Ethical Hacking - NETWORK PENETRATION TESTING(1)

    Pre--Connection-Attacks that can be done before connecting to the network. Gaining Access - How to b ...

  9. 题解 洛谷 P3210 【[HNOI2010]取石头游戏】

    考虑到先手和后手都使用最优策略,所以可以像对抗搜索一样,设 \(val\) 为先手收益减去后手收益的值.那么先手想让 \(val\) 尽可能大,后手想让 \(val\) 尽可能小. 继续分析题目性质, ...

  10. unittest学习笔记

    File "C:\Program Files\Python36\lib\site-packages\selenium\webdriver\remote\errorhandler.py&quo ...