IOS TextField伴隨鍵盤移動,iostextfield

來源:互聯網
上載者:User

IOS TextField伴隨鍵盤移動,iostextfield

這篇文章介紹的是一個簡單而又實用的小方法。

我想對於登陸時的一些效果大家應該都不會陌生。

今天就介紹一下,當開始輸入TextField文本時鍵盤彈出TextField伴隨鍵盤移動的實現。

先看一下示範效果

 

我們對TextFiel進行約束。約束內容如下️

約束結束後,我們需要做一個很重要的是,就是把把TextField的底部約束拖到相應的代碼地區。

內容如下️

做完這些我們就可以通過代碼實現響應的內容

實現代碼如下:

////  ViewController.m//  CX TextFiled伴隨鍵盤移動的實現////  Created by ma c on 16/3/31.//  Copyright © 2016年 xubaoaichiyu. All rights reserved.//#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet NSLayoutConstraint *bottomSpace;@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    //簡曆通知    [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardWillChangeFrameNotification:) name:UIKeyboardWillChangeFrameNotification object:nil];}-(void)keyboardWillChangeFrameNotification:(NSNotification *)note{    //擷取鍵盤的餓frame    CGRect frmae = [note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];        //讓TextFiled的底部約束間距為螢幕高度減去鍵盤頂部的y值即可    //注意 這裡不要使其等於鍵盤的高度,因為高度時死的,會導致鍵盤下去後,TextField並未下去的結果。    self.bottomSpace.constant = [UIScreen mainScreen].bounds.size.height - frmae.origin.y;        //擷取鍵盤的動畫時間,使TextField與鍵盤的形態一致    CGFloat interval = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];    //設定Text的動畫    [UIView animateWithDuration:interval animations:^{               //注意這裡不是改變值,之前已經改變值了,        //在這裡需要做的事強制布局        [self.view layoutIfNeeded];            }];    }-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{        [self.view endEditing:YES];    }@end

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.