2012-01-30 52 views
0

我见过很多触发日期选择器的文本字段。 我想只有一种方法来制作日期选择器。该日期选择器必须具有带文本字段标识符的方法选择器。我不知道我怎么能做到这一点。UIDatePicker with args(UITextfiled)的选择器

这里是我的代码:

- (IBAction)launchPickerDate:(id)sender{ 
    UIDatePicker *datepickerNew = [UIDatePicker new]; 
    [datepickerNew setHidden:NO]; 
    datepickerNew.frame = CGRectOffset(datepickerNew.frame, 0, 244); 

    UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil 
                  delegate:nil 
                cancelButtonTitle:nil 
               destructiveButtonTitle:nil 
                otherButtonTitles:nil]; 

    [actionSheet setActionSheetStyle:UIActionSheetStyleBlackTranslucent]; 

    CGRect pickerFrame = CGRectMake(0, 40, 0, 0); 

    UIDatePicker *launchPickerDate = [[UIDatePicker alloc] initWithFrame:pickerFrame]; 
    [launchPickerDate addTarget:self action:@selector(SelectDatePicker:) forControlEvents:UIControlEventValueChanged]; 

    [actionSheet addSubview:launchPickerDate]; 

    UISegmentedControl *closeButton = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObject:@"Ok"]]; 
    closeButton.momentary = YES; 
    closeButton.frame = CGRectMake(260, 7.0f, 50.0f, 30.0f); 
    closeButton.segmentedControlStyle = UISegmentedControlStyleBar; 
    closeButton.tintColor = [UIColor blackColor]; 
    [closeButton addTarget:self action:@selector(closeDatePicker:) forControlEvents:UIControlEventValueChanged]; 
    [actionSheet addSubview:closeButton]; 

    [actionSheet showInView:[[UIApplication sharedApplication] keyWindow]]; 

    [actionSheet setBounds:CGRectMake(0, 0, 320, 485)]; 

} 

回答

0

我并没有真正得到您的问题,但在我看来,你想做出一些改变,以根据所选择的文本字段的日期选择器。您可以使用tag属性识别调用方法的文本字段。像

if (sender.tag==1){ 
//do something as first text field selected 
}else if(sender.tag==2){ 

//do something as second text field selected 
} 

您可以通过Interface Builder中指定(如果你使用的是厦门国际银行的),或者通过类似代码的文本字段标签。 firstTextField.tag=1; 等..希望这有助于...如果别的只是让我知道

+0

好了标签,但我怎么可以通过这个PARAM因为我的代码是: '[launchPickerDate addTarget:自我行动:@selector( SelectDatePicker :) forControlEvents:UIControlEventValueChanged];' – 2012-01-30 14:29:31

+0

没关系! 对于所有: 我已经加入 'launchPickerDate.tag = sender.tag;' 而 ' - (IBAction为)SelectDatePicker:(的UIDatePicker *)发件人{ 的UITextField * TMP =(的UITextField *) [self.view viewWithTag:sender.tag]; NSDate * date = [发件人日期]; NSDateFormatter * formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@“yyyy-MM-dd HH:mm”]; tmp.text = [formatter stringFromDate:date]; }' – 2012-01-30 16:55:14