2015-04-21 37 views
5

Uygulamamda UISplitViewController alt sınıfını uygulamam için: iPhone ve iPad. Aygıtı Landscape'dan Portrait yönüne döndürdüğümde başlıkta belirtilen yöntem çağrılır. IPhone 6 Plus'ta uygulamayı çalıştırmadıkça gerçekten işe yarıyor. Bu yöntem neden orada aranmıyor?Neden splitViewController: collapseSecondaryViewController: ontoPrimaryViewController: iPhone 6 Plus'ta aranmıyor mu?

Bu yöntemin çalışması için ne yapılmalı?

Uygulamayı iPhone 6 Plus numaralı telefona başlattığımda her iki yönde de her şey yolunda. Ancak sorun, 'u Landscape'dan Portrait'a döndürdüğüm zamandır. Gezinme denetleyicim beklendiği gibi çalışmayacak.

Bu

ne demek olduğunu:

iPhone 5s Portrait
enter image description here

iPhone 5s Portre Ben konuma seçilmiş olan

enter image description here

iPhone 5s Yatay seçtiğinizde bak katyon

enter image description here

iPhone 5s ben Yatay dan

enter image description here

iPhone 6 Plus Portre Portre için döndürmek

enter image description here

iPhone 6 Plus Portre Ben seçilen konumu ile konuma

enter image description here

iPhone 6 Plus Yatay seçtiğinizde

enter image description here

iPhone 6 Artı Yatay dan Dikeye döndürmekthis is a problem çünkü benim yöntemim splitViewController:collapseSecondaryViewController:ontoPrimaryViewController: çağrılmaz. O zaman UINavigationController çalışmıyor. Konum seçtiğimde hiçbir şey olmuyor.

enter image description here Film Şeridi'nde benim SplitViewController

class PBOSplitViewController: UISplitViewController, UISplitViewControllerDelegate { 
    override func viewDidLoad() { 
     super.viewDidLoad() 

     preferredDisplayMode = UISplitViewControllerDisplayMode.AllVisible 
     delegate = self 
    } 

    func splitViewController(splitViewController: UISplitViewController, collapseSecondaryViewController secondaryViewController: UIViewController!, ontoPrimaryViewController primaryViewController: UIViewController!) -> Bool { 
     return false 
    } 
} 

Ben kurulum

.

+0

Bu yöntemi çağırmak için splitViewController zorlamaya çalıştı, ancak –

cevap

4

iPhone 6+ daha büyük bir ekrana sahiptir ve bazı yollarla bir iPad gibi davranılır.Bir iPhone 6 + 'daki bölünmüş görünüm denetleyicisi, uygulama "Yakınlaştırılmış Ekran Modu" nda değilse, bir iPad'deki gibi hem ana hem de ayrıntılı bölmeleri görüntülemeye çalışacaktır.

NSHipster daha detaylı bu açıklayan bir makale vardır: http://nshipster.com/uisplitviewcontroller/

+0

hala sorunu çözmek için nasıl bilmiyorum yardımcı olmadı. Aynı davranışı iPhone 6 Plus'ta tutmak mümkün mü? –

+0

@ BartłomiejSemańczyk UISplitViewControllers 'tercihDisplayMode' ile istediğiniz düzeni zorlamayı deneyin https://developer.apple.com/library/ios/documentation/UIKit/Reference/UISplitViewController_class/#//apple_ref/occ/instp/UISplitViewController/preferredDisplayMode –

+0

I Bunu da yaptı, ama hala düzgün çalışmıyor. Bu, "Yakınlaştırılmış Ekran Modu" ile söylediğiniz gibi bir sorun olduğunu düşünüyorum, ancak Simülatörde böyle bir seçenek yoktur. –

İlgili konular