1.隐藏状态栏

iOS升级至7.0以后,很多API被废止,其中原有隐藏状态栏StatusBar的方法就失效了。

原有方案

[[UIApplication sharedApplication] setStatusBarHidden:YES];
但很不幸,在后来的版本中实效了,因此我们可以使用新的API来实现隐藏状态的栏的目的,如下:
 
-(BOOL)prefersStatusBarHidden
{
return YES;
}

2.自动隐藏键盘并自动布局

这里提供的解决方案适用于任何类型的键盘,主要是考虑到NumberPad没有return键。

同时也是基于ScrollerView进行布局的方案,使用ScrollerView自带的动画效果。

代码如下:

@implementation TestViewController

- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
[_scrollView addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyboard)]];
}
-(void)textFieldDidBeginEditing:(UITextField *)textField{
//键盘高度为216
[_scrollView setFrame:CGRectMake(0, 0, _scrollView.frame.size.width, _scrollView.frame.size.height+216)];
[_scrollView setContentOffset:CGPointMake(0, 100) animated:YES];
[_scrollView setTag:0]; }
-(void) hideKeyboard{
if(_scrollView.tag==0){
[_scrollView setContentOffset:CGPointMake(0, 0) animated:YES];
[_scrollView setFrame:CGRectMake(0, 0, _scrollView.frame.size.width, _scrollView.frame.size.height-216)];
[self.view endEditing:YES];
[_scrollView setTag:1];
}
}
}
}

iOS开发-自动隐藏键盘及状态栏的更多相关文章

  1. iOS开发自己定义键盘回车键Return Key

    在iOS开发中.用户在进行文本输入的时候,往往会用到虚拟键盘上的回车键,也就是Return Key.回车键有时候能够是"完毕"(表示输入结束).能够是"下一项" ...

  2. iOS 开发之 - 关闭键盘 退出键盘 的5种方式

    iOS 开发之 - 关闭键盘 退出键盘 的5种方式   1.点击编辑区以外的地方(UIView) 2.点击编辑区域以外的地方(UIControl) 3.使用制作收起键盘的按钮 4.使用判断输入字元 5 ...

  3. iOS开发中虚拟键盘相关的坑

    初学者在学习iOS开发时,遇到在一个textField中输入完内容后却发现虚拟键盘无法隐藏起来而不知所措的情况的人一定不占少数吧.这篇文章就说说我遇到的和虚拟键盘有关的三个问题及解决对策. 在模拟器测 ...

  4. iOS开发之软键盘使用小技巧

    在iOS开发过程中,有时候须要弹出软键盘进行输入,有时候又须要在某些情况下隐藏软键盘,以提高用户体验. 今天有几个关于软键盘的小技巧和大家分享. (1)仅仅弹出数字键盘 有某些需求中,要求用户仅仅能在 ...

  5. IOS学习:隐藏键盘方法

    1.点击界面的其它空白地方隐藏      由于UIViewController是继承自UIResponder的,所以可以覆写- (void)touchesBegan:(NSSet *)touches ...

  6. iOS开发之--隐藏状态栏

    1,全局隐藏 在Targets->General->勾选中Hide status bar .,如下图: 2.单个页面隐藏/展示状态栏 1).首先在info.plist里面View cont ...

  7. iOS开发——实用篇Swift篇&状态栏操作

    状态栏操作 在Swift开发过程中,针对状态栏操作的过程有很多. 1.在ViewController中操作当前ViewController的状态栏 /** 隐藏状态栏 */ override func ...

  8. iOS开发——自动填充短信验证码

    苹果在iOS 12,改进了一个很人性化的小细节.在做短信验证码功能的时候,自动获取短信中的验证码,然后点击填充即可.不用再向之前那样麻烦,自己看到弹出的短信信息后,死记硬背,再一个个敲上去,害怕背错了 ...

  9. iOS开发之隐藏tabbar--解决隐藏后依然不能响应对应位置事件的问题

    状态条StatusBar 1 [UIApplication sharedApplication].statusBarHidden = YES; 导航条NavigationBar 1 [self.nav ...

随机推荐

  1. 特级教师总结的教育之33条(ZZ)

    一位班主任发给家长的一则短信:“无论成绩好坏,请想想:每个孩子都是种子,只不过每个人的花期不同.有的花,一开始就灿烂绽放:有的花,需要漫长的等待.不要看着别人怒放了,自己的那棵还没有动静就着急,相信是 ...

  2. Ubuntu下 QT添加外部链接库(.so文件)示例

    参考:https://blog.csdn.net/KKALL1314/article/details/81915354 https://forum.qt.io/topic/80301/file-not ...

  3. linux 修改yum 为阿里云源

    为了加快yum的下载速度,我们可以讲yum源指向阿里云的资源. 操作方法: 1.备份系统的yum源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repo ...

  4. Amaze UI 云适配

    Amaze UI  云适配 陈本峰  一中,中科大 香港科大

  5. 将批量指定的docker镜像打成文件

      #/bin/bash tag= img1=hub.chinacloud.com.cn/onex.dev/one-task-scheduler:$tag img2=hub.chinacloud.co ...

  6. c# devexpress 多个窗口

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  7. java使用filter设置跨域访问

    import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import ja ...

  8. Build Laravel Blog PigJian by PHP7 and Nginx on Ubuntu

    Recently, I found an interesting framework Laravel written by PHP. i have never used PHP to write an ...

  9. centos设置服务开机自动启动的方法

    centos安装好apache,mysql等服务器程序后,并没有设置成开机自动启动的,为避免重启后还要手动开启web等服务器,还是做下设置好,其实设置很简单,用chkconfig命令就行了. 例如要开 ...

  10. eclipse选中某个字段没法高亮其他相同字段

    eclipse选中某个字段无法高亮其他相同字段解决办法: window >> preference >> java >> Editor >> Mark ...