zoukankan      html  css  js  c++  java
  • iOS开发-自动隐藏键盘及状态栏

    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];
        }
    }
    }
    }
    

  • 相关阅读:
    sparql学习sparql示例、dbpedia在线验证
    中国绿卡
    逾期率的水有多深,你知道吗?
    ICO和区块链区别
    What are the benefits to using anonymous functions instead of named functions for callbacks and parameters in JavaScript event code?
    Link static data in sql source control
    sql data compare
    viewbag
    多态的实际使用
    win10 sedlauncher.exe占用cpu处理
  • 原文地址:https://www.cnblogs.com/mantgh/p/4270424.html
Copyright © 2011-2022 走看看