Domanda

Voglio visualizzare un testo con molte righe. Ho aggiunto un'etichetta multilinea a una vista di scorrimento, ma non ha mostrato nulla. Sembra che questo non sia il modo corretto di utilizzare la vista di scorrimento. Come utilizzare la vista di scorrimento in modo che gli utenti possano trascinare verso il basso per visualizzare più testo?

È stato utile?

Soluzione

Puoi semplicemente usare un UITextView. È figlio di UIScrollView e se imposti la sua proprietà text su una quantità di testo che non rientra nella cornice, la vista diventerà scorrevole.

Altri suggerimenti

La UIScollView documentazione di Apple è abbastanza bene, dovresti iniziare da lì e capire la lezione.

Pensa a una vista di scorrimento come a una grande superficie di visualizzazione sulla quale scorre lo schermo *. È possibile aggiungere viste secondarie alla vista di scorrimento e quindi lo scorrimento è come posizionare lo schermo sopra la vista di scorrimento: lo schermo si comporta come una finestra che è possibile vedere fino a parte del contenuto della vista di scorrimento di seguito.

Per fare ciò, una vista di scorrimento ha alcune proprietà extra rispetto a una normale UIView - ma è come una UIView per un aspetto impreciso: non rende alcun contenuto direttamente se stesso. Devi aggiungere una sottoview per disegnare il tuo testo. Una vista di scorrimento viene configurata e visualizzata esattamente come una vista UIV - vale a dire che si imposta la cornice, la si aggiunge a un'altra vista e per mostrare il proprio testo è necessario aggiungere delle viste secondarie a UIScrollView che possono effettivamente renderizzare il testo.

Per configurare un UIScrollView di base richiesto, è sufficiente crearlo come una normale visualizzazione a schermo intero: impostare la cornice con le stesse dimensioni della finestra e aggiungere la vista di scorrimento alla finestra come vista secondaria. Quindi crea un UITextView di grandi dimensioni per contenere il testo. La vista UIText può essere grande quanto vuoi, in particolare può essere più grande dello schermo. imposta la proprietà contentSize di UIScrollView in modo che corrisponda al frame di UITextView, quindi aggiungi la vista UIText come sottoview di UIScrollView.

Una volta che hai funzionato, puoi spostare automaticamente il contenuto con la proprietà contentOffset, controllare lo zoom e impostare un delegato per osservare gli eventi di scorrimento.

* in modo più preciso, su cui scorre il frame ma suppongo che tu stia realizzando un UIScrollView a schermo intero. Sono sicuro che puoi generalizzarlo se vuoi una visione più piccola.

Ho usato UIScrollView in questo modo per un riquadro di istruzioni in una delle mie applicazioni. Funzionava ma non ero soddisfatto del risultato. Sono quindi passato all'utilizzo di UIWebView e sono stato molto più felice del risultato. Gestisce il dimensionamento automatico della vista di scorrimento, ottengo tutte le funzionalità di formattazione dell'HTML e posso avere collegamenti che vanno a informazioni aggiuntive (o siti esterni) con nient'altro che l'aggiunta di un altro file HTML e forse del codice delegato. Ecco il codice che ho usato (e ho aggiunto il file HTML alla mia app come risorsa):

NSString *path = [[NSBundle mainBundle] pathForResource:@"instructions" ofType:@"html"];
NSFileHandle *readHandle = [NSFileHandle fileHandleForReadingAtPath:path];
NSString *htmlString = [[NSString alloc] initWithData: [readHandle readDataToEndOfFile] encoding:NSUTF8StringEncoding];
[self.instructionsView loadHTMLString:htmlString baseURL:nil];

U può fare riferimento a questo sito web http: //www.edumobile.org/iphone/iphone-programming-tutorials/scrollview-example-in-iphone/

Segui la procedura passo per passo per rendere la vista di scorrimento in iphone ... buona fortuna :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top