2012-10-24 15 views
7

To mnie martwiło od dłuższego czasu, a ja przeprowadziłem tak wiele badań na ten temat, ale nie mogłem znaleźć odpowiedzi. Po raz pierwszy zamieszczam tutaj pytanie, proszę poprawić/wybaczyć, jeśli popełnię błąd.Wiele MODAL VIEW kontrolek zmienia bazową modalną na FULL SCREEN po ROTATION

Środowisko: iPad, iOS 6.0

Problem: Baza modalne widok zmiany na pełny ekran po rotacji.

Opis: Mam działającą na pełnym ekranie aplikację, która aktualnie wyświetla kontroler widoku modalnego. Z wykazujące modalnego widzenia wyświetlać inny widok modalne wykonując:

vc.modalPresentationStyle = UIModalPresentationFormSheet; 
[self presentModalViewController:vc animated:YES]; 
//[self presentViewController:vc animated:YES completion:NULL]; 

Podczas gdy drugi pogląd pojawia się i obrócić urządzenie iPad. Podstawowy (pierwszy) widok modalny staje się pełnoekranowy, a najwyższy (drugi) widok modalny pozostaje w formie stylu arkusza. (Obróć poprawnie)

Mogę to naprawić, dodając widok modalny do navigationController, ale chcę zachować go w widoku modalnym.

Ktoś wie o poprawce? Wierzę, że ta osoba tutaj jest ten sam problem: ios 6 Incorrect modal view size after rotation

Btw, wszystko działa poprawnie w iOS 5. Jabłko zmienił sposób rotacja działa w iOS 6. Dzięki, -Peter

Odpowiedz

4

Znalazłem rozwiązanie dla tego problemu. Przed rozpoczęciem prezentacji ustaw styl prezentacji ostatniego modalnego na UIModalPresentationCurrentContext.

jak poniżej:

vc.modalPresentationStyle = UIModalPresentationCurrentContext; [self presentModalViewController: vc animowany: YES];

Rozwiązuje to podstawowy rozmiar zmiany widoku widoku po obróceniu ekranu iPada.

Oryginalnie odebrane przez ludzi na Apple Dev forum.

+0

FWIW, działało to świetnie, ale musiałem ustawić to w kontrolerze widoku dziecka, nie mogłem ustawić go w prepareForSegue z prezentacjiVC. – rooftop

Powiązane problemy