Ho un UITableViewCell personalizzato che contiene diversi UIButtons. La posizione del frame di ciascun pulsante è relativa alla larghezza della cella. Ho impostato autoresizingMask = UIViewAutoresizingFlexibleWidth in modo che regolerà correttamente la larghezza della cella e le posizioni dei pulsanti quando l'applicazione inizia con il dispositivo in modalità orizzontale o verticale.Ruota un UITableViewCell personalizzato
Il problema è quando il dispositivo viene ruotato da una modalità all'altra, i pulsanti non regolano le posizioni perché UITableViewCell è riutilizzabile. In altre parole, la cella non viene inizializzata in base alla nuova larghezza di UITalbeView poiché la funzione della cella initWithStyle viene chiamata prima che il dispositivo venga ruotato e non venga richiamato dopo la rotazione del dispositivo. Eventuali suggerimenti?
Finisce la soluzione è molto più semplice. Ha solo bisogno di impostare self.contentView.autoresizingMask = UIViewAutoresizingFlexibleWidth; self.contentView.autoresizesSubviews = YES; NON funziona impostando self.autoresizingMask. –
Ho lo stesso problema di te e stavo pensando di usare tag cella specifici per ogni caso di orientamento da quando questa idea mi è venuta dopo aver pensato un po '. Utilizzando self.contentView.autoresizesSubviews = YES non funziona dalla mia parte. – user255607
Finalmente ho usato un altro trucco. – user255607