使用 UIDatePicker 实时更新 UILabel

发布于 2025-01-05 02:28:44 字数 483 浏览 3 评论 0原文

我已经把一切都安排好了。我只需要知道如何在用户浏览 UIDatePicker 时更新 UILabel。

NSDate *myDate =dateView.date;
dateFormatter = [[NSDateFormatter alloc] init]; 
//NSDate *date = [NSDate date]; 
[dateFormatter setDateFormat:@"MMM d y"]; 
NSString *dateString = [dateFormatter stringFromDate:myDate]; 
NSLog(@"New Date is = %@",dateString);
self.firstDateDisplayed.text = [self.dateFormatter stringFromDate:self.dateView.date];  

}

(这一切都在 IBAction 中) 如果您需要更多代码,请告诉我。非常感谢。

I have everything set up. I just need to know how to get the UILabel to update as the user goes through the UIDatePicker.

NSDate *myDate =dateView.date;
dateFormatter = [[NSDateFormatter alloc] init]; 
//NSDate *date = [NSDate date]; 
[dateFormatter setDateFormat:@"MMM d y"]; 
NSString *dateString = [dateFormatter stringFromDate:myDate]; 
NSLog(@"New Date is = %@",dateString);
self.firstDateDisplayed.text = [self.dateFormatter stringFromDate:self.dateView.date];  

}

(This is all in an IBAction)
If you need anymore code just let me know. Many thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

泛泛之交 2025-01-12 02:28:44

您可以在 viewDidLoad 方法中添加类似的内容:

[dateView addTarget:self action:@selector(whateverTheMethodsCalled:) forControlEvents:UIControlEventValueChanged];

然后是实际的目标方法。

-(IBAction)whateverTheMethodsCalled:(id)sender{
    //NSDate *myDate =dateView.date;
    dateFormatter = [[NSDateFormatter alloc] init]; 
    //NSDate *date = [NSDate date]; 
    [dateFormatter setDateFormat:@"MMM d y"]; 
    //NSString *dateString = [dateFormatter stringFromDate:myDate]; 
    //NSLog(@"New Date is = %@",dateString);
    firstDateDisplayed.text = [self.dateFormatter stringFromDate:dateView.date];  
}

或者在 IB 中,您可以将日期选择器的 valueChanged 事件连接到您的 IBAction 方法。

像所有 UIControl 一样,UIDatePicker 有一个名为 UIControlEvent.. 的范例,您在这里感兴趣的是 valueChanged;这与按钮事件触发 UIControlEventTouchUpInsideIBAction 方法类似。 addTarget:action:forControlEvents: 所做的只是表明当该控件事件发生时您需要调用。

You would put something like this in your viewDidLoad method:

[dateView addTarget:self action:@selector(whateverTheMethodsCalled:) forControlEvents:UIControlEventValueChanged];

And then the actual target method.

-(IBAction)whateverTheMethodsCalled:(id)sender{
    //NSDate *myDate =dateView.date;
    dateFormatter = [[NSDateFormatter alloc] init]; 
    //NSDate *date = [NSDate date]; 
    [dateFormatter setDateFormat:@"MMM d y"]; 
    //NSString *dateString = [dateFormatter stringFromDate:myDate]; 
    //NSLog(@"New Date is = %@",dateString);
    firstDateDisplayed.text = [self.dateFormatter stringFromDate:dateView.date];  
}

Or in IB you can connect the datepicker's valueChanged event to your IBAction method.

UIDatePicker like all UIControls has a paradigm called UIControlEvent.. the one your interested in here is valueChanged; It's similar to how button events fire your IBAction methods for UIControlEventTouchUpInside. All that addTarget:action:forControlEvents: does is say that when that control event happens you want a call.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文