2013-04-29 2 views
5

Ho personalizzato UIDatePicker a un livello e lo aggiungo a UIAlertView.Personalizzazione UIDatePicker

enter image description here

ma sto ottenendo un colore nero nella parte inferiore e la parte superiore del calendario, come rimuoverlo. Voglio che il selezionatore di date sia pulito e ordinato.

Il codice che uso per raggiungere questo obiettivo:

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

come Didi si fatto che può condividere alcuni esempi di codice qui plz –

+0

@KAREEMMAHAMMED Vedere la mia modifica. – satheeshwaran

+0

Penso che ciò non sia possibile con iOS 6, UIDatePicker non è una sottoclasse di UIPickerView. –

risposta

1

Fondamentalmente ciò che si vuole fare, è quello di rimuovere il gradiente in alto e in basso, a destra?

Questo sta andando a lavorare, almeno per iOS 5 e 6.

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

Grazie, controllerà se questo funziona, ma tutto cambierà mentre il selettore di date è stato rinnovato per iOS7. – satheeshwaran