Ho un UITextView e sto provando ad animare un cambiamento di frame quando l'utente tocca un pulsante. Fondamentalmente la visualizzazione del testo diventa più grande per adattarsi allo schermo in modo che possa visualizzare più testo, e quindi quando l'utente tocca nuovamente il pulsante, si restringe alla sua cornice originale.UITextView che anima la modifica del frame non anima la riallocazione del testo
I eseguire l'animazione utilizzando blocchi, in questo modo:
if(!isDisplayingDetailView)
{
//Expand view
[UIView animateWithDuration:0.5
animations:^{
self.detailView.frame = self.view.frame;
}
completion:^(BOOL finished){
isDisplayingDetailView = YES;
}];
}
else{
//Shrink view.
[UIView animateWithDuration:0.5
animations:^{
self.detailView.frame = self.detailFrame;
}
completion:^(BOOL finished){
isDisplayingDetailView = NO;
}];
}
Dove self.detailView rappresenta l'UITextView e self.detailFrame è solo un CGRect tiene il frame originale. isDisplayingDetailView è solo un BOOL per verificare se la vista è espansa o meno. Il mio problema è che il ridimensionamento del testo non è animato. Ho fatto alcuni screenshot da un'applicazione di test per illustrare il mio problema: App vista di default:
La vista espansa:
Il TextView solo un momento dopo toccando il pulsante:
Come si può vedere il testo si riduce automaticamente alla dimensione finale del fotogramma, senza alcun ki nd di animazione, mentre i limiti si stanno ancora animando. Immagino che sia il comportamento giusto, ma mi piacerebbe sapere se è possibile animare il testo insieme alla sua vista.
Ciao, hai trovato una soluzione a questo, se sì per favore condividi con me, sono anche bloccato nello stesso problema –
@VinayakaKarjigi scusa ma non ho trovato soluzione. –
ha avuto lo stesso problema. la mia soluzione era di rendere un'immagine della vista testo posizionandola dove era la textview, nascondere la vista testuale e quindi animare l'immagine. – peko