iOS8数字键盘左下角添加完成按钮
来源:互联网 发布:prelude是什么软件 编辑:程序博客网 时间:2024/04/27 19:41
iOS8数字键盘左下角添加完成按钮的核心代码如下:
- (void)addDoneButtonToNumPadKeyboard{ UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeCustom]; if (systemVersion < 8.0){ doneButton.frame = CGRectMake(0, 163, 106, 53); }else{ doneButton.frame = CGRectMake(0, SCREEN_SIZE.height-53, 106, 53); } doneButton.tag = NUM_PAD_DONE_BUTTON_TAG; doneButton.adjustsImageWhenHighlighted = NO; [doneButton setTitle:@"完成" forState:UIControlStateNormal]; [doneButton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal]; [doneButton addTarget:self action:@selector(doneButton:) forControlEvents:UIControlEventTouchUpInside]; NSArray *windowArr = [[UIApplication sharedApplication] windows]; if (windowArr != nil && windowArr.count > 1){ UIWindow *needWindow = [windowArr objectAtIndex:1]; UIView *keyboard; for(int i = 0; i < [needWindow.subviews count]; i++) { keyboard = [needWindow.subviews objectAtIndex:i]; NSLog(@"%@", [keyboard description]); if(([[keyboard description] hasPrefix:@"<UIPeripheralHostView"] == YES) || ([[keyboard description] hasPrefix:@"<UIKeyboard"] == YES) || ([[keyboard description] hasPrefix:@"<UIInputSetContainerView"] == YES)){ UIView *doneButtonView = [keyboard viewWithTag:NUM_PAD_DONE_BUTTON_TAG]; if (doneButtonView == nil){ [keyboard addSubview:doneButton]; } } } }}-(void)removeDoneButtonFromNumPadKeyboard{ UIView *doneButton = nil; NSArray *windowArr = [[UIApplication sharedApplication] windows]; if (windowArr != nil && windowArr.count > 1){ UIWindow *needWindow = [windowArr objectAtIndex:1]; UIView *keyboard; for(int i = 0; i < [needWindow.subviews count]; i++) { keyboard = [needWindow.subviews objectAtIndex:i]; if(([[keyboard description] hasPrefix:@"<UIPeripheralHostView"] == YES) || ([[keyboard description] hasPrefix:@"<UIKeyboard"] == YES) || ([[keyboard description] hasPrefix:@"<UIInputSetContainerView"] == YES)){ doneButton = [keyboard viewWithTag:NUM_PAD_DONE_BUTTON_TAG]; if (doneButton != nil){ [doneButton removeFromSuperview]; } } } }}
注:
1.iOS8之后,键盘view的description变为以<UIInputSetContainerView开头,所以需要在判断的逻辑中加上这一项。
2.iOS8之后,键盘view的大小变成了整个屏幕的大小,所以需要对按钮添加的位置进行适配。
3 3
- iOS8数字键盘左下角添加完成按钮
- iOS8数字键盘左下角添加完成按钮的核心代码如下:
- ios在数字键盘左下角添加“完成”按钮的实现原理
- ios8数字键盘添加完成
- ios隐藏数字键盘 --在数字键盘左下角添加“完成”按钮的实现原理
- 给数字键盘添加完成按钮的坑
- ios在 键盘左下角添加“完成”按钮的实现原理
- 数字键盘添加自定义按钮
- 数字键盘添加自定义按钮
- 数字键盘添加自定义按钮
- iOS8 数字键盘添加自定义按钮(兼容各个版本以及解决自定义按钮滑动出现的问题)
- (判断第三方输入法)在系统数字键盘上添加“完成”按钮引发的问题思考
- 数字键盘添加自定义按钮(转自cocoachina)
- 为数字键盘添加自定义按钮的方法
- iOS_为数字键盘增加完成按钮即ToolBar
- iOS 数字键盘完成键
- UITextField清除按钮的模式、关闭自动纠错单词、关闭自动首字母大写、数字键盘上加一个完成按钮
- iOS 之给苹果自带的纯数字键盘添加完成事件
- 东软学习,strut2初级学习的部分截图和笔记(三)
- ZOJ-#3468 Dice War(概率)
- centos 命令大全
- GPRS模块发送短信
- 简单理解抽象工厂模式
- iOS8数字键盘左下角添加完成按钮
- android sqlite数据库的使用方法
- VLC for Android最新版Ubuntu 14.04编译方法
- IOS多线程处理
- 友元函数与友元类
- Python Import 详解
- WPF 实现加载等待状态
- 正则表达式的应用
- Android中处理崩溃异常