UIDatePicker定制 [英] UIDatePicker customization

查看:159
本文介绍了UIDatePicker定制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已将UIDatePicker自定义为一个级别,并将其添加到UIAlertView.

I have customized UIDatePicker to a level and I am adding it to UIAlertView.

但是我在日期选择器的底部和顶部出现黑色,如何将其删除.我希望日期选择器干净整洁.

but I am getting a black color on the bottom and the top of date picker, how to remove it. I want the date picker to be neat and clean.

我用来实现此目的的代码:

The code I use to achieve this:

UIDatePicker *datePicker = [[UIDatePicker alloc] init];
datePicker.frame=CGRectMake(20, 45.0, 240.0, 150.0);
datePicker.minimumDate=[NSDate date];

//Forget about this logic.

NSString *alertTitleString=@"";
if(self.presentingViewController !=nil)
{
    alertTitleString=@"Select Date and Time";
    [datePicker setDatePickerMode:UIDatePickerModeDateAndTime];
}
else
{
    alertTitleString=@"Select Time";
    [datePicker setDatePickerMode:UIDatePickerModeTime];

}
[datePicker setDate:[NSDate date]];

UIView *view = [[datePicker subviews] objectAtIndex:0];
[view setBackgroundColor:[UIColor clearColor]]; // hide the first and the last subviews
[[[view subviews] objectAtIndex:0] setHidden:YES];
[[[view subviews] lastObject] setHidden:YES];



 UIAlertView *eventStartDateAlert = [[UIAlertView alloc] initWithTitle:alertTitleString message:@"\n\n\n\n\n\n\n\n" delegate:self cancelButtonTitle:NSLocalizedString(@"OK", @"Ok") otherButtonTitles:nil];
eventStartDateAlert.delegate = self;
[eventStartDateAlert addSubview:datePicker];
[eventStartDateAlert show];

推荐答案

基本上,您要删除顶部和底部的渐变,对吗?

Basically what you want to do, is to remove the gradient on top and bottom, right?

这至少在iOS 5和iOS 6上可行.

This is going to work, at least for iOS 5 and 6.

[view.subviews[5]  setHidden:YES];
[view.subviews[11] setHidden:YES];
[view.subviews[17] setHidden:YES];

这篇关于UIDatePicker定制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆