Bu soru hakkında kesin olan iOS9 +7.3/9/2 + Swift Cihaz döndüğünde dönüş animasyonu nasıl devre dışı bırakılır?
sıradan bir modern bir uygulama var ki (autolayout, evrensel film şeridi) bunu normal AutoRotate isteyen tüm dört rotasyon pozisyonları
izin vermez kullanıcı portre
için manzara cihazı döner Ama sadece cihazı dönen kullanıcıya sırasında YOK animasyon istediğinizde yolu, bu nedenle yeni kısıt tabanlı düzenleri dönüşür. Yeni yanlara veya dikey yerleşime sadece "tıklamak" istersiniz.
Bunu başarmak mümkün olmuştur tek yolu ekleyerek geçerli:
override func viewWillTransitionToSize(size:CGSize,
withTransitionCoordinator coordinator:UIViewControllerTransitionCoordinator)
{
coordinator.animateAlongsideTransition(nil, completion:
{_ in
UIView.setAnimationsEnabled(true)
})
UIView.setAnimationsEnabled(false)
super.viewWillTransitionToSize(size, withTransitionCoordinator: coordinator);
}
biri görünümü denetleyicisi, bir yüksek veya yakın en yüksek konteyner görüşlerin kalanını ya da her türlü yer tutan VC sahne.
Temel olarak, animasyonları açmak için RotateToInterfaceOrientation/didRotateFromInterfaceOrientation (her ikisi de artık modern iOS'ta kullanılamaz) kullanmanın aynı eski fikridir.
Ancak birçok sorun
bu AppWide çalışmıyor vardır, bu bir felaket, bu sahne tabanlı
sadece tüm animasyonları kapatmak için Çok Kötü görünüyor olduğunu
Eğer pisti
hakkındadır ???
Bu soru kesinlikle iOS9 +
hakkında
Bu iOS sürümü hangi içindir? –
Merhaba @LukeVanIn, kesinlikle iOS9. İlk cümle dikkat! – Fattie
Simülatör üzerinde çalışır, ancak gerçek bir cihazda (ipad) çalışır. “UIView.areAnimationsEnabled()”, animasyon bloğunun içinde “true” ifadesini döndürür; Döndürme animasyonu bloğu ile ilgili bir zamanlama sorunu olmalı ... ('setAnimationsEnabled' doc durumları: '_ Bu yöntem yalnızca çağrıldıktan sonra gönderilen animasyonları etkiler. Mevcut animasyonlar çalışırken bu yöntemi çağırırsanız, bu animasyonlar devam eder. doğal son noktaya ulaşana kadar koşuyorlar. ") – lazi74