2016-03-28 11 views

cevap

0

İlk VC bir UIViewController nesne ve ikinci I ... pakette 'MenuViewController' adlı bir film şeridi bulunamadı:

class SettingsViewController: UIViewController { 

var vc: UIViewController? 

@IBOutlet var changeInitialView: UISwitch? 

@IBAction func changeButton(sender: UIButton) { 
    if changeInitialView!.on { 
     print("Switch is off") 
     vc = UIStoryboard(name: "MenuViewController", bundle: nil).instantiateViewControllerWithIdentifier("MenuViewController") 
     changeInitialView!.setOn(false, animated:true) 
    } else { 
     print("Switch is on") 
     changeInitialView!.setOn(true, animated:true) 
    } 
} 

Ben böyle çalışırsanız, hep ben bu mesajı başarısız gösterir düşünmek MenuViewController sizin film şeridi adı değil viewcontroller adıdır. Aşağıdaki adımları deneyin:

  1. Başlangıçta uygulama akışı başlayacak yerden bir başlangıç ​​VC olması gerekir.
  2. Uygulamanız bir sonraki başlatıldığında ilk VC'yi değiştirmek isterseniz, bir bayrak oluşturun ve değerini NSUserDefaults içinde saklayın. didFinishLaunchingWithOptions numaralı telefondan
  3. , bayrağı NSUserDefaults işaretleyin ve buna göre başlangıç ​​VC'nizi ayarlayın.

Daha önce paylaştığım bağlantıda 3. adımın kodu görüntülenir.

+0

Evet, ayrıca storyboarddaki ("Menü") adla da çalıştım ama bu da işe yaramıyor. Vc bir UIViewController nesnesi ile ne demek istiyorsun? Orada bir şey değiştirmek zorunda mıyım? – Thobbit

+0

Hikaye panosu adı nedir? – Ujjwal

+0

Storyboard adı "Menü" – Thobbit

İlgili konular