简单的实现UIpicker上面的取消确定按钮

1 因为我用的xib实现的添加picker 和textfiled的,

  1. @interface ViewController : UIViewController<UITextFieldDelegate,UIPickerViewDelegate,UIPickerViewDataSource>{
  2. UIToolbar *tool;//主要用这存放按钮
  3. }
  4. @property (retain, nonatomic) IBOutlet UIDatePicker *picker;
  5. @property (retain, nonatomic) IBOutlet UITextField *text;
  6. @property (retain, nonatomic) IBOutlet UITextField *textField;
  7. @end

tool;

控件,

  1. - (void)viewDidLoad
  2. {
  3. [super viewDidLoad];
  4. tool = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, 30.0f)];
  5. tool.barStyle = UIBarStyleBlackTranslucent;//实现Uitoolbar,他的位置不重要,主要是大小,
  6. //toolbar上面放得就是items控件,因为是在左右两边都放一个,中间没有,中间放了2个空的可以达到效果,因为自己不能实现item自动位置放置,
  7. UIBarButtonItem *previousBarItem = [[UIBarButtonItem alloc] initWithTitle:@"取消"  style:UIBarButtonItemStyleBordered
  8. target:self
  9. action:@selector(previousField:)];
  10. //空的itme占空位
  11. UIBarButtonItem *nextBarItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
  12. target:nil
  13. action:nil];
  14. UIBarButtonItem *spaceBarItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
  15. target:nil
  16. action:nil];
  17. UIBarButtonItem *doneBarItem = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"完成", @"")
  18. style:UIBarButtonItemStyleDone
  19. target:self
  20. action:@selector(resignKeyboard:)];
  21. <span style="white-space:pre">  </span>//添加到tool上面
  22. [tool setItems:[NSArray arrayWithObjects:previousBarItem,nextBarItem,spaceBarItem,doneBarItem,nil]];
  23. _text.inputView=_picker;//这块设置比较重要,textfiled的inputview是picker,
  24. _text.delegate=self;
  25. _text.inputAccessoryView=tool;//textfiled 的inputAccessoryview的是tool,原因我也具体不是不说了,看别人的,
  26. _textField=[[UITextField alloc]init];//这个临时的textfiled主要是实现picker的弹回去,就是隐藏,
  27. }
  28. -(void)textFieldDidBeginEditing:(UITextField *)textField{
  29. _textField=textField;//把textfiled控件赋予给临时的textfiled控件
  30. }
  31. -(void)resignKeyboard:(id)sender{
  32. //实现picker隐藏,实现方法和键盘弹起收回一样,具体原因也不是很明白,
  33. [_textField resignFirstResponder];<span style="color:#ffffff;">
  34. }</span>

上面就是简单的实现tool的添加,

时间: 2024-08-07 00:18:22

简单的实现UIpicker上面的取消确定按钮的相关文章

美团HD(7)-添加取消搜索按钮

DJSelectCityViewController.m #pragma mark - UISearchBar 代理方法 /** SearchBar开始编辑 */ - (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar { // 隐藏导航栏 [self.navigationController setNavigationBarHidden:YES animated:YES]; // 显示遮罩 UIView *cover = [[

如何避免在简单业务逻辑上面的细节上面出错

很多时候对于新的开发人员最容易犯得错误就是细节问题.对于如何在业务逻辑上面的细节上面出错,有很多要考虑的地方,但是如何保证不出错呢?需要把每一个考虑到的点都能列出来.然后按照列出来的点来考虑和编程可能对于细节出错上面有很大的帮助.然后是总结有那几种不同形式的业务逻辑,然后那些事通用的,那些是需要考虑的. 我这边只是单纯列出几点需要考虑的.1.字段是否可为空. 2.字段长度. 3.字段可以输入的格式是什么,只能是数字还是说别的. 4.字段之间有没有关联,直接是否存在关系. 5.操作会造成什么影响,

关于取消TextFiled上面的灰色联想区域的问题

其实之前的项目就已经有这方面的问题了,我遇到了好几次TF上面的灰色的联想区域问题,我大部分都是先用iPhone5s去做,我坚决不会告诉你我只有5s的.. 于是我各种百度,各种问题,各种解决方法,但是我就是没看见我的问题方法. 其实这个问题只要调用一个属性就行了..可能问题太偏了吧... textfiled里面有个view属性,下面有个correction 和 spell checking 只要把这两个属性设为NO,问题一般就能解决了(→这只是针对Xib的空间来说的,要是我是手写的代码怎么办呢..

Android jni aes加解密,实现文件的加解密,具体实现可以自行修改,上面的代码为简单介绍,下面的是JNI端实现文件加解密,可以修改为字符串加解密

#include "aes.h" #include "modes.h" #include "e_os2.h" #include "aes_locl.h" #include "opensslconf.h" AES_KEY aes; //aes cbc模式加解密用到的向量 unsigned char iv[AES_BLOCK_SIZE]; for (i = 0; i < AES_BLOCK_SIZE; i

python获取动态网站上面的动态加载的数据(初级)

我们在处理一些网站数据的时候,有时候我们需要的数据很多都是动态加载的,而不都是静态的,以下以一个实例来介绍简单的获取动态数据,首先申明本人小白,还在学习python中,这个方法还是比较笨拙的,但是对于初学者还是需要知道的. 首先我们的要求是获取下面文章的参考文献: 刚刚开始,我的想法是使用lxml.BeatifulSoup.正则表达式来处理,这几个是处理静态网站的常用方法,查看网页源码我们会发现相应的div里面是空,也就是说上面的数据不是静态的,而是后面动态加载的,利用googl浏览器可以看到:

简单实用可线上应用的线程池组件

0 前言 线程池的组件网上很多,之前我自己也尝试写个一个demo,但这些组件一般都比较简单,没有完整的实现后台线程池组件应用的功能.因此,这里我们实现一个可以用在线上环境的线程池组件,该线程池组件具备线程池应用的特性,如下所示: 1. 伸缩性:即线程池中线程的个数应该是动态变化的.繁忙的时候可以申请更多的线程:空闲的时候则注销一部分线程. 2. 线程状态:线程池中对线程的管理引入睡眠.唤醒机制.当线程没有任务在运行时,使线程处于睡眠状态. 3. 线程管理:对线程池中线程的申请和注销,不是通过创建

【Android注释技巧】Android函数上面的注释你是怎么写的?(Eclipse中)

前言:你用过Eclipse快捷键 Alt + Shift + J 么?你看过源码么?如果看过,你注意过源码上面的注释么?你知道为什么看源码注释有些标识的参数可以直接点击跳转么? 先出个题目,定义一个最简单的Person类,三个属性,一个name,一个age,一个性别,一个带所有属性参数的构造函数,你会怎么写? public class Person { private String mName; private int mAge; private int mSex; public Person(

CSS实现Div透明,而显示在上面的文字不透明,但也可看到显示在下面的图片内容

CSS实现Div透明,而显示在上面的文字不透明,但也可看到显示在下面的图片内容,DiV透明其实挺简单,主要是为background定义opacity属性,一般这个是最大值是1,数值越接近1,则越不透明,也就是越小越透明,颜色可以自定义.这样可以让图片上的文字更清淅,在一些图片特效中我们会见到这种效果. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/

Netty简单应用与线上服务器部署_netty视频

Netty简单应用与线上服务器部署 课程学习地址:http://www.xuetuwuyou.com/course/198 课程出自学途无忧网:http://www.xuetuwuyou.com 一.开发环境 4.1.11.Final   jdk1.8 maven 3.2 Spring 4.3.9 二.适合人群 ①想深入学习java ClassLoader ②想在线上linux服务器上运行netty或Springboot服务 三.课程目标 ①掌控ClassLoader ②学会编写shell脚本