2012-04-18 7 views
12

Ho creato un progetto basato sullo storyboard. In una delle viste, la vista del controller richiede alcuni elementi aggiuntivi da posizionare, il che porta ad aumentare l'altezza della vista in modo che la vista debba ora essere scorrevole. È possibile cambiare semplicemente il tipo di classe di UIView in UIScrollView nello storyboard? Converte davvero l'UIView di primo livello in UIScrollView? Sto solo cercando un modo semplice e veloce per farlo senza grandi cambiamenti.iOS: modifica della sottoclasse da UIView a UIScrollView in uno storyboard

Grazie

risposta

3

Devi cambiare il tipo di UIView a UIScrollView (ispettore di identità) e nel controller metodo "viewDidLoad" assegnare la visualizzazione di un contentSize lanciando la vista di un UIScrollView:

[(UIScrollView *)self.view setContentSize:CGSizeMake(320, 700)]; 
0

Un metodo più semplice consiste semplicemente nell'usare una vista a scorrimento e impostare il contenuto in modo che abbia le stesse dimensioni del fotogramma - quindi non c'è un'area scorrevole. es.

scrollview.contentsize = CGSizeMake(320,480); 

quindi quando è necessario ingrandire la visualizzazione, è sufficiente aggiornare questo come richiesto. Sarà necessario assicurarsi che il rimbalzo sia disattivato, altrimenti sarà comunque possibile trascinare il mouse sulla scrollView.

3

In realtà c'è un modo molto migliore per farlo.

  1. Toggle aprire il UIView nello storyboard e tagliare al vostro nulla appunti al suo interno.
  2. Elimina il UIView.
  3. Inserire un oggetto UIScrollView nello StoryBoard.
  4. Incolla dagli appunti in questo nuovo oggetto.

Questo metodo consente di conservare tutte le impostazioni delegate e IBOutlet configurate per le cose all'interno della vista.

+0

Se sei disposto ad averlo leggermente più ingombrante del necessario, in alternativa puoi avere il 'UIScrollView' all'interno di 'UIView'. Anche questo funziona. –

+13

Rompe però i vincoli – Ixx