IOS数字键盘左下角添加完成按钮的实现方法

 更新时间:2017年08月24日 10:59:30   投稿:lqh  
这篇文章主要介绍了IOS数字键盘左下角添加完成按钮的实现方法的相关资料,希望通过本文能实现类似这样的功能,需要的朋友可以参考下

IOS数字键盘左下角添加完成按钮的实现方法

实现代码:

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


以上就是IOS数字键盘左下角添加完成按钮的实现方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • iOS中设置圆角的几种方法示例

    iOS中设置圆角的几种方法示例

    这篇文章主要介绍了iOS中设置圆角的三种方法,其中包括使用layer属性、使用绘图设置圆角以及通过另一张mask图创建新图,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-03-03
  • IOS 时间和时间戳之间转化示例

    IOS 时间和时间戳之间转化示例

    我们经常从服务器后台拿到时间戳的时间,以下代码可以实现将时间戳转为可读的时间格式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-01-01
  • iOS简单登录LoginViewController、注册RegisterViewController等功能实现方法

    iOS简单登录LoginViewController、注册RegisterViewController等功能实现方法

    这篇文章主要为大家详细介绍了iOS简单登录LoginViewController、注册RegisterViewController、UcenterViewController功能实现方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • iOS弹幕组件LNDanmakuMaster的具体使用

    iOS弹幕组件LNDanmakuMaster的具体使用

    这篇文章主要介绍了iOS弹幕组件LNDanmakuMaster的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • iOS对数组进行排序的实例代码

    iOS对数组进行排序的实例代码

    本文通过实例代码给大家讲解了ios对数组进行排序的实例方法,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-08-08
  • iOS中从网络获取数据的几种方法的比较

    iOS中从网络获取数据的几种方法的比较

    IOS中获取网络数据一般有三种:1、NSURLCondition(已过时) 2、NSURLSession 3、三方库AFNetWorking。下面通过本文给大家比较这三种方法的区别对比
    2017-11-11
  • iOS NSURLSessionDownloadTask设置代理文件下载的示例

    iOS NSURLSessionDownloadTask设置代理文件下载的示例

    本篇文章主要介绍了iOS NSURLSessionDownloadTask设置代理文件下载的示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • iOS中键盘 KeyBoard 上添加工具栏的方法

    iOS中键盘 KeyBoard 上添加工具栏的方法

    大iOS中 键盘 KeyBoard 上怎么添加工具栏呢?大致思路是提前创建好工具栏,在键盘弹出的时候将工具栏显示出来,在键盘消失的时候让工具栏隐藏。具体实现代码大家参考下本文吧
    2017-08-08
  • IOS中各种手势操作实例代码

    IOS中各种手势操作实例代码

    IOS中手势操作一般是 UIGestureRecognizer 类的几个手势子类去实现,一般我们用到的手势就这么5种,具体哪几种大家通过本文学习吧,本文重点给大家介绍IOS中各种手势操作实例代码,一起看看吧
    2017-03-03
  • iOS实现文字转化成彩色文字图片

    iOS实现文字转化成彩色文字图片

    这篇文章主要为大家详细介绍了iOS文字转化成彩色文字图片的实现方法,可以实现不同字体,渐变的效果,感兴趣的小伙伴们可以参考一下
    2016-03-03

最新评论