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

1 因为我用的xib实现的添加picker 和textfiled的,
@interface ViewController : UIViewController<UITextFieldDelegate,UIPickerViewDelegate,UIPickerViewDataSource>{
    UIToolbar *tool;//主要用这存放按钮
}
@property (retain, nonatomic) IBOutlet UIDatePicker *picker;
@property (retain, nonatomic) IBOutlet UITextField *text;
@property (retain, nonatomic) IBOutlet UITextField *textField;
@end

tool;
控件,
- (void)viewDidLoad
{
    [super viewDidLoad];
   
        tool = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, 30.0f)];
        tool.barStyle = UIBarStyleBlackTranslucent;//实现Uitoolbar,他的位置不重要,主要是大小,
        
        
        
        //toolbar上面放得就是items控件,因为是在左右两边都放一个,中间没有,中间放了2个空的可以达到效果,因为自己不能实现item自动位置放置,
        UIBarButtonItem *previousBarItem = [[UIBarButtonItem alloc] initWithTitle:@"取消"  style:UIBarButtonItemStyleBordered
                                                                           target:self
                                                                           action:@selector(previousField:)];
        //空的itme占空位
        UIBarButtonItem *nextBarItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
                                                                                     target:nil
                                                                                     action:nil];
        UIBarButtonItem *spaceBarItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
                                                                                      target:nil
                                                                                      action:nil];
        UIBarButtonItem *doneBarItem = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"完成", @"")
                                                                        style:UIBarButtonItemStyleDone
                                                                       target:self
                                                                       action:@selector(resignKeyboard:)];
        
	//添加到tool上面
        [tool setItems:[NSArray arrayWithObjects:previousBarItem,nextBarItem,spaceBarItem,doneBarItem,nil]];
  
    _text.inputView=_picker;//这块设置比较重要,textfiled的inputview是picker,
    _text.delegate=self;
    _text.inputAccessoryView=tool;//textfiled 的inputAccessoryview的是tool,原因我也具体不是不说了,看别人的,
    
    _textField=[[UITextField alloc]init];//这个临时的textfiled主要是实现picker的弹回去,就是隐藏,
}

-(void)textFieldDidBeginEditing:(UITextField *)textField{
    _textField=textField;//把textfiled控件赋予给临时的textfiled控件
}
-(void)resignKeyboard:(id)sender{
    //实现picker隐藏,实现方法和键盘弹起收回一样,具体原因也不是很明白,
    [_textField resignFirstResponder];
}
上面就是简单的实现tool的添加,

你可能感兴趣的:(简单的实现UIpicker上面的取消确定按钮)