ios工作札记2——UIView层次管理(sendSubviewToBack,bringSubviewToFront)
来源:互联网 发布:sql删除有约束字段 编辑:程序博客网 时间:2024/05/19 21:15
ios
http://segmentfault.com/a/1190000000517494
本文仅作为个人学习总结记录使用!能力有限,难免会有疏漏和错误,还望指出。共同进步。
独白
一个小小的动画,照成的视图覆盖问题,困扰了我一上午。原因还是对UIView的层次管理了解的不够全面.
正文
我想在编辑"其他原因"时,会自动弹出键盘,然后开启一个动画,让整个VIEW上移,不让键盘挡住view
PS:navigationBar被我隐藏了,图片上的title是在整个VIEW中的
动画代码如下:
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView{// [self.view sendSubviewToBack:self.view_content]; [UIView animateWithDuration:0.35f animations:^{ [self.view_content setFrame:CGRectMake(self.view_content.frame.origin.x, self.view_content.frame.origin.y - 216.0f, self.view_content.frame.size.width, self.view_content.frame.size.height)]; } completion:^(BOOL finished) { }]; return YES;}
然后结果会变成这样:
自定义的"导航栏"不见了
将一个UIView显示在最前面只需要调用其父视图的 bringSubviewToFront()方法。将一个UIView层推送到背后只需要调用其父视图的 sendSubviewToBack()方法。
修改之后的代码:
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView{ [self.view sendSubviewToBack:self.view_content]; [UIView animateWithDuration:0.35f animations:^{ [self.view_content setFrame:CGRectMake(self.view_content.frame.origin.x, self.view_content.frame.origin.y - 216.0f, self.view_content.frame.size.width, self.view_content.frame.size.height)]; } completion:^(BOOL finished) { }]; return YES;}
最终的效果:
- ios
- 举报
0 0
- ios工作札记2——UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- iOS 视图层次管理 sendSubviewToBack、bringSubviewToFront
- iOS 视图层次管理 sendSubviewToBack、bringSubviewToFront
- UIView层次切换(bringSubviewToFront,sendSubviewToBack)的使用
- sendSubviewToBack,bringSubviewToFront
- BringSubviewToFront sendSubviewToBack 小结
- bringSubviewToFront/sendSubviewToBack/removeFromSuperview
- sendSubviewToBack和bringSubviewToFront
- bringSubviewToFront()和sendSubviewToBack()
- UIView层次管理
- sqoop1.99.4 JAVA API操作
- GDB中查看STL容器类的内容
- 我的世界(Minecraft)1.8 mod 制作——为你的mod添加自定义音效
- NSUserDefaults 数据存储路径
- 在EOS项目中禁用BPS服务
- ios工作札记2——UIView层次管理(sendSubviewToBack,bringSubviewToFront)
- LeetCode--Sudoku Solver(DFS)
- DataTable转为json并绑定Easyui的datagrid控件
- Square root
- 如何:针对64 位平台配置 Visual C++ 项目
- cocos2dx 2.2.5 一键创建工程批处理
- opencv+CUDA编程的一些问题
- NGUI之UISprite
- 华为面试吐槽