Elma programlı segues gerçekleştirmek için performSegueWithIdentifier:sender:someObject
kullanılmasını önerir.
kendi kodunuzu azı
Eğer çerçeve izin veriyorsun demektir işin daha do: bu şekilde yapmaya avantajlardan en az bir çift vardır. Apple, push segues için süper serin yeni görsel efektle gelirse veya performansı iyileştirirse veya gelecekteki iOS sürümlerinde bir hatayı düzeltirse, uygulamanız ücretsiz olarak edinilebilir. Ve yazmak için yazdığınız her kod satırı sizin için yapabilir, hata yazma şansınızı artırır.
IB'da daha fazlası değiştirmek daha kolay anlamına gelebilir. Tüm itici görevlerinizi modal seferi veya kendi süper-serin görsel efektinizi yaptığınız bazı özel segue tiplerine değiştirmek istediğinize karar verirseniz, hepsini IB'de seçebilir ve avcılık yerine tek bir tıklama ile segue tipini değiştirebilirsiniz. senin kodunda. Ayrıca
, ilk veya ikinci yöntemi kullanmak ister sırayla bir görünüm denetleyicisi bastırıyor Kullanıcıların beklediğiniz şekilde çalışmaz "geri" bir önceki görünüm denetleyicisi gidin. Sonra "geri" gitmek için tekrar LocationViewController
itmeliyim
LocationViewController -> SongViewController
: Bir SongViewController
itmek zaman, navigasyon yığının sonuna eklenen oluyor kullanıcı geri düğmesine musluklar
LocationViewController -> SongViewController -> LocationViewController
ise Gezinme çubuğu, konum görünümünden şarkı görünümüne tekrar konum görünümüne geri döner. (Ayrıca, bunu yapmaya devam ederseniz, her "geri" ve "ileri", başka sorunlara yol açabilecek sürekli artan bir görüntü denetleyicileri zincirine ekleyecektir.)
Bunun yerine, gezinti denetleyicisinin ele almasına izin vermelisiniz. geri gitmek.Bu kullanım için navigasyon çubuğuna bir düğme koyar, bu çoğu kullanım durumlarını ele almalıdır. Geri dönmek için kendi kontrolünüzü yapmanız gerekiyorsa, bunu iOS 5 ile IB'de yapamazsınız, ancak navigasyon denetleyicisinin popViewControllerAnimated:
yöntemiyle programatik olarak yapabilirsiniz. şahsen
, bir film şeridini ve segues kullandığınız beri, daha sonra 2. bunu yapmanın daha güzel bir yoludur. –
# 1, segue olmayan bir denetleyiciye basmanız gerekirse faydalı olabilir. Örneğin, viewviewer'i mapview açıklamalarının açıklama düğmesinden itin. – kappa
Her şey bir segue olabilir. Her şey, IB'de tamamen yapılmış bir * otomatik * işarete sahip olamaz (düğmeler ve masa hücreleri gibi). Ama yine de bir denetleyiciden başlayarak IB'de bir segue yaratabilir ve bunu gerçekleştirmek için # 2'yi kullanabilirsiniz; Bu, harita açıklama düğmeleri için tam olarak ne yapacağınızdır. – rickster