2012-10-21 5 views
11

Sto usando un UIPageViewController nella mia app. Funziona abbastanza bene, ma quando accendo le pagine, la pagina successiva sembra essere inizializzata in una cornice che è più grande dello schermo: mentre si gira la pagina, solo una parte della vista del prossimo viewController si adatta allo schermo.UIPageViewController ha una dimensione sconosciuta

sto inizializzazione del UIPageViewController in viewDidLoad e ha iniziato a registrare i fotogrammi del PageVC, le sue subviews e il parentVC. Ogni frame sembra essere a posto, solo il frame UIPageViewController' s, che accedo a viewControllerAfterViewController ha una larghezza che è quasi il doppio delle dimensioni effettive dello schermo.

risposta

15

ho finalmente risolto questo problema impostando il telaio diritto di vista s' il UIPageViewController durante l'inizializzazione del PageVC:

pageViewController.view.frame = self.view.frame; 

Dove pageViewController è la UIPageViewController inizializzo, e auto è il genitore VC del pageVC .

Spero che questo aiuti chiunque con problemi simili.

+0

In realtà, questo funziona fino a quando frame in alto e left sono 0, altrimenti, PageViewController non sarà allineato correttamente (verrà spostato in basso a destra). È più sicuro impostare solo larghezza e altezza come: 'pageViewController.view.width = self.view.width pageViewController.view.height = self.view.height' – Ultimecia