2009-11-09 10 views
15

In questo momento sto creando un UITableView in un pennino FlipsideView. Non riesco a modificare lo sfondo della vista tabella dal generatore di interfacce. Posso risolvere questo problema creando una presa e quindi impostando lo sfondo. Tuttavia, voglio dare agli angoli arrotondati della vista di scorrimento in modo da creare un aspetto simile alle visualizzazioni delle tabelle dell'app/meteo di iPhone. C'è un modo per accedere alla proprietà della vista di scorrimento nel codice in modo che possa impostare gli angoli arrotondati?È possibile accedere a ScrollView In Code di UITableView da un pennino?

risposta

58

Un UITableView non dispone di un UIScrollView, è è un UIScrollView. UITableView è una sottoclasse di UIScrollView come lo si può vedere nello documentation. Qualsiasi proprietà della funzionalità di UIScrollView a cui si desidera accedere può essere direttamente accessibile tramite la vista tabella.

Analogamente, UITableViewDelegate s sono tutti UIScrollViewDelegate s.

0

Se non sbaglio, il punto di vista di tabella per gli stock e le applicazioni meteo sono semplicemente single-sezione raggruppati viste da tavolo (UITableViews inizializzati con lo stile). Non è necessario personalizzare nulla delle proprietà UIScrollView della vista tabella per generare lo stesso effetto angolo arrotondato.

+0

Non è esattamente la stessa cosa. Nell'applicazione Apple, gli angoli arrotondati rimangono sempre nello stesso punto. Se si limita una sezione raggruppata lì. Gli angoli arrotondati scorreranno su e giù con la tableview stessa. – rickharrison

4

È possibile aggiungere un raggio dell'angolo a qualsiasi livello di vista. Sarebbe simile a questa:

theTableView.layer.cornerRadius = 10.0f; // Or whatever radius you wanted to set 

credo sarà necessario collegare al quadro QuartzCore e importare l'intestazione QuartzCore.h, anche.

Questo arrotonderà gli angoli della tabella in modo simile a come appaiono nel lato opposto di Weather.app.

+0

È inoltre necessario impostare la proprietà masksToBounds del livello con [[theTableView layer] setMasksToBounds: YES]; –

+0

Posso farlo, ma lo rende anche molto lento. Non è quasi così come le visualizzazioni di tabella nell'applicazione di Apple – rickharrison

Problemi correlati