2015-04-20 15 views
5
UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(50, 50, 100, 40)]; 
[self.view addSubview:slider]; 

Il problema è che non riesco a visualizzare UISlider ma posso ancora trascinarlo. Devo indovinare la posizione e trascinare.UISlider scomparso in iOS 8.3

L'ambiente di compilazione è basato su ios 6 sdk (obbligatorio perché la mia app non usa ancora il flat) Qualcuno sa come risolvere questo problema? Grazie mille.

+0

Come soluzione alternativa, prova a impostare il valore minimoTrackTintColor, maximumTrackTintColor e thumbTrackTintColor. – Anna

+0

Non è una soluzione ma ti ha fornito una segnalazione di bug con Apple? La mia app ha lo stesso problema, in genere risolvono cose come questa con la prossima versione. – nickthedude

+0

Ho rivisitato un vecchio progetto per risolvere questo problema (tra le altre cose che iOS8 si è rotto), installato dall'ultimo Xcode e il problema non c'era più. Forse è stato un bug iOS che hanno risolto. – DenverCoder9

risposta

1

Ho anche provato questo con un'applicazione iOS 6.1 in esecuzione su iOS 8.3.

Sembra che Apple abbia ripulito le risorse immagine che sono per il vecchio aspetto di iOS. Non sono sicuro che sia stato un errore o intenzionale.

Ho trovato una soluzione al problema utilizzando i metodi forniti per personalizzare l'aspetto del controllo che sono dettagliati nello UISlider class reference.

Ecco il mio codice:

[self.myControl setThumbImage:[UIImage imageNamed:@"thumb.png"] forState:UIControlStateNormal]; 
[self.myControl setMaximumTrackImage:[UIImage imageNamed:@"background.png"] forState:UIControlStateNormal]; 
[self.myControl setMinimumTrackImage:[UIImage imageNamed:@"highlight.png"] forState:UIControlStateNormal]; 

ero in grado di ricreare l'aspetto di serie in modo relativamente facile.

Spero che questo aiuti.