博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一行代码为UITextField添加收键盘功能
阅读量:5127 次
发布时间:2019-06-13

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

iOS开发中收键盘是十分常用的功能,只需一行代码即可为ViewController添加工具条收键盘功能

更重要的是使用catogory,无代码污染。

 

代码

//  UITextField+keyboard.h//  TextFieldKeyBord////  Created by luo.h on 15/10/8.//  Copyright © 2015年 l.h. All rights reserved.//#import 
@interface UITextField (keyboard)+(void)registerTextFieldInView:(UIView *)aView;@end

 

////  UITextField+keyboard.m//  TextFieldKeyBord////  Created by luo.h on 15/10/8.//  Copyright © 2015年 l.h. All rights reserved.//#import "UITextField+keyboard.h"@implementation UITextField (keyboard)-(void)addToolbarWitDoneTitle:(NSString*)title{    UIBarButtonItem *flexibleSpaceLeft = [[UIBarButtonItem alloc]                                          initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace                                          target:nil                                          action:nil];        UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:title                                                                   style:UIBarButtonItemStyleDone                                                                  target:self                                                                  action:@selector(dismissKeyBord)];    [doneButton  setTintColor:[UIColor redColor]];        UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, self.window.frame.size.width, 44.0)];    [toolbar setItems:@[flexibleSpaceLeft, doneButton]];    [self setInputAccessoryView:toolbar];}//查找所有UITextField并添加按钮+(void)registerTextFieldInView:(UIView *)aView;{    for (id obj in aView.subviews) {        NSLog(@"obj class: %@",[obj class]);        if ([obj isKindOfClass:[UITextField class]]) {            UITextField* theTextField = (UITextField*)obj;            [theTextField addToolbarWitDoneTitle:@"完成"];        }    }}-(void)dismissKeyBord{    [self  resignFirstResponder];}@end

 

使用:

- (void)viewDidLoad {    [super viewDidLoad];    //注册self.view里所有UITextField    [UITextField registerTextFieldInView:self.view];}

Demo: http://files.cnblogs.com/files/sixindev/TextFieldKeyBord.zip

 

 

转载于:https://www.cnblogs.com/sixindev/p/4862735.html

你可能感兴趣的文章
使用.NET MVC框架项目开发流程(项目开发流程)
查看>>
Deer Populations of the Puget Sound
查看>>
go关键字之type用法
查看>>
本地文件加载
查看>>
TreeSet的特性
查看>>
rsync遇到非默认的SSH端口
查看>>
log4j2配置文件解读
查看>>
Struts2中使用HttpServletRequest和HttpServletResponse
查看>>
1、函数定义
查看>>
测试工具APPScan安装与使用教程
查看>>
gimp 很强大, 可是不会用
查看>>
152. Maximum Product Subarray最大乘积子数组/是否连续
查看>>
Design Pattern --- Iterator
查看>>
maven中把依赖的JAR包一起打包
查看>>
docker部署war包到阿里云
查看>>
【福利】微信小程序130个精选Demo合集
查看>>
混合开发
查看>>
初学者路径规划 | 人生苦短我用Python
查看>>
126. Implement Queue using Stacks
查看>>
Hbase思维导图之架构
查看>>