博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用代理控制点击输入框,键盘升起,页面上升
阅读量:5933 次
发布时间:2019-06-19

本文共 1856 字,大约阅读时间需要 6 分钟。

hot3.png

 

//

//  ViewController.m

//  控制键盘显示页面自动上升

//

//  Created by dc0061 on 16/1/4.

//  Copyright © 2016 dc0061. All rights reserved.

//

#import "ViewController.h"

ViewController ()

{

    UITextField *text;

    UITextField *text1;

    UILabel *label;

}

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    

    label = [[UILabel alloc]initWithFrame:CGRectMake(100, 100, 175, 40)];

    label.text=@"测试";

    [self.view addSubview:label];

    

    text = [[UITextField alloc]initWithFrame:CGRectMake(100, 550, 175, 40)];

    text.textAlignment=NSTextAlignmentCenter;

    text.layer.cornerRadius=5;//设置显示圆角

    text.backgroundColor=[UIColor colorWithWhite:0.9 alpha:0.9];

    [self.view addSubview:text];

    

    text1 = [[UITextField alloc]initWithFrame:CGRectMake(100, 600, 175, 40)];

    text1.textAlignment=NSTextAlignmentCenter;

    text1.layer.cornerRadius=5;//设置显示圆角

    text1.backgroundColor=[UIColor colorWithWhite:0.9 alpha:0.9];

    [self.view addSubview:text1];

    //在输入框左侧添加一个view

    UIView *views=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 5, 1)];

    text.leftView=views;

    text.leftViewMode = UITextFieldViewModeAlways;

    [self.view addSubview:views];

    

    //监听键盘事件

    NSNotificationCenter *center=[NSNotificationCenter defaultCenter];

    

    [center addObserver:self selector:@selector(keyboard:) name:UIKeyboardWillChangeFrameNotification object:nil];

}

#pragma mark 代理方法

- (void)keyboard : (NSNotification *) noteInfo{

    //获取键盘的高度

    CGRect rect=[noteInfo.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];

    NSLog(@"%@",noteInfo.userInfo);

    self.view.transform=CGAffineTransformMakeTranslation(0, rect.origin.y-self.view.frame.size.height);

}

- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

}

#pragma mark view响应事件

- (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

{

    //隐藏键盘

    [text resignFirstResponder];

    [text1 resignFirstResponder];

}

@end

转载于:https://my.oschina.net/u/2287505/blog/597253

你可能感兴趣的文章
opendaylight安装
查看>>
FragmentPagerAdapter和FragmentStatePagerAdapter的区别
查看>>
vs2015 key
查看>>
sublime 技巧与快捷键篇
查看>>
容器集合整理
查看>>
好用的CSS模块化打包工具CSS-COMBO
查看>>
BZOJ1012:[JSOI2008]最大数maxnumber(线段树)
查看>>
算法的时间复杂度和空间复杂度
查看>>
谈计算机之翻译程序
查看>>
使用try...catch...报内存不为read
查看>>
典型重构5 (封装字段)
查看>>
CDays -5 Python初体验
查看>>
函数嵌套>作用域>闭包函数
查看>>
C#面试总结
查看>>
【Project Euler】3 第三题
查看>>
【Unity】2.2 Unity编辑器中的常用菜单项
查看>>
Ranges用法
查看>>
2015编程之美资格赛 回文子序列个数
查看>>
Codeforces 985 E - Pencils and Boxes
查看>>
雷人语句
查看>>