2016-03-28 24 views
1

ilk kez gönderme geri portre beklenmedik rotasyon, bu yüzden soruma doğru bilgi vermeyeceğim beni affet ...iOS - segue

I (Swift cinsinden) bir uygulamayı oluştururken ediyorum ve Tüm ekranlar için tüm ekran yönelimlerini desteklemek istiyorum (ve Xcode genel sekmesini buna göre ayarladım). Bir oturum açma/başlatma ekranı var ve uygulamanın geri kalanı için kök denetleyici bir UINavigationController.

Sorunum - Aygıt yatay yönde olsa ve ekranların tümü manzarayı desteklese bile ekran her seferinde tekrar dikey olarak dönmeye devam ediyor! Bu standart bir davranışta mı? Ve eğer öyleyse, bir şekilde onu engelleyebilir miyim? Net olmak gerekirse - ekran rotasyonunun bir segue sonrasında aygıt yönünü yansıtmaya devam etmesini istiyorum - ve tüm ekranlar şu anda tüm yönelimleri desteklemektedir.

aşağıdaki gibi, belli bir ekran/görünümü denetleyicisi için yanlış geri shouldAutorotate ayarlama çalıştı ve görünür görünüşüdür kontrolörün shouldautorotate() işlev başvurmak için UINavigationController uzattığımızı: Bu dönmesini engeller

extension UINavigationController { 
    public override func shouldAutorotate() -> Bool { 
     return visibleViewController!.shouldAutorotate() 
    } 
} 

(manzara) aygıtın yönlenişinden uzaklaştıkça, ama eğer kullanıcı tekrar dikey olarak dönüyorsa ekran yatay olarak kalıyor ...

Bu gerçekten basit olmalıydı, ama hiçbir bilgi bulamadım. ya da diğer sorular, sadece izin verilen yönelimleri kısıtlama ile ilgili sorular (I) sadece ekran yönelimini aygıtın yönünü her zaman yansıtmasını isteyin) ...

Tek bir düşünce var - bir segue sonrasında toOutorotate işlevinin çağrılıp çağrılmadığını algılamanın bir yolu var mı? Ve bu örnekte false döndür, aksi halde doğru mu?

Her türlü yardım minnetle karşılanacaktır!

Teşekkür

Dan

cevap

0

görünümünüzü denetleyicisi içine bu 2 yöntemleri ekleyin:

override func shouldAutorotate() -> Bool { 
    return false 
} 


override func supportedInterfaceOrientations() -> UIInterfaceOrientationMask { 
    return UIInterfaceOrientationMask.Portrait 
} 
İlgili konular