2013-04-29 63 views
5

我已經自定義UIDatePicker到一個級別,我將它添加到UIAlertView。UIDatePicker自定義

enter image description here

,但我得到的底部有一個黑色的顏色和日期選擇器的頂部,如何刪除它。我希望日期選取器整潔乾淨。

我使用這個實現的代碼:

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

//Forget about this logic. 

NSString *[email protected]""; 
if(self.presentingViewController !=nil) 
{ 
    [email protected]"Select Date and Time"; 
    [datePicker setDatePickerMode:UIDatePickerModeDateAndTime]; 
} 
else 
{ 
    [email protected]"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]; 
+0

如何迪迪,你做的比可以在這裏分享一些示例代碼PLZ – 2013-05-14 07:25:11

+0

@KAREEMMAHAMMED見我的編輯。 – satheeshwaran 2013-08-07 05:04:51

+0

我認爲這對於iOS 6來說是不可能的,UIDatePicker不是UIPickerView的子類。 – 2013-09-03 17:23:40

回答

1

基本上你想要做的,是除去頂部和底部的坡度,對不對?

這是去工作,至少爲iOS 5和6

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

謝謝,將檢查這是否有效,但隨着日期選擇器針對iOS7進行了更新,一切都將發生變化。 – satheeshwaran 2013-09-13 15:36:27

相關問題