2014-11-24 3 views
8

Fondamentalmente, la mia app è strutturata in formato di pagina e mi piacerebbe che si avvii nel mezzo delle tre pagine. Non c'è modo di impostare una pagina precedente come segue, quindi ho cercato di farlo in codice.Launch Watch App in middle view

Ho la vista principale impostata sulla prima vista e ho provato una varietà di metodi per passare alla visualizzazione centrale non appena l'app è stata avviata.

Ecco i due modi ho provato:

if segueCheck == true { 
     self.pushControllerWithName("budget", context: self) 
     self.presentControllerWithName("budget", context: self) 
     segueCheck = false 
    } 

La prima presenta la vista, ma come vista completamente separate e la seconda sostituisce la prima vista con la vista centrale.

Qualcuno sa come posso lanciare nella vista centrale e consentire all'utente di scorrere a sinistra ea destra di esso?

Grazie.

risposta

8

WKInterfaceController 's becomeCurrentPage() dovrebbe essere quello che stai cercando.

Creiamo una nuova classe per il controller della vista centrale, CenterPageViewController, e cambiare il suo metodo initWithContext: come segue

import WatchKit 

class CenterPageViewController: WKInterfaceController { 

    override init(context: AnyObject?) { 
     super.init(context: context) 

     super.becomeCurrentPage()   
    } 
} 

Ora cerchiamo di impostare la classe personalizzata per la pagina centrale nel vostro storyboard per CenterPageViewController

enter image description here

e infine premere run.

Non sarà possibile eliminare la transizione iniziale dalla pagina sinistra alla pagina centrale, ma l'app inizierà finalmente nella pagina centrale.

+0

Grande! Molte grazie. – user3746428

+0

Non c'è ancora modo di farlo senza animazione? – Georg

1

Aggiornamento Swift 3,0

class CenterPageViewController: WKInterfaceController { 

override init(){ 
    super.init() 
    super.becomeCurrentPage() 
    } 
} 

Questa volontà funziona ... !!!

Grazie

+0

Si vorrebbe spostare in 'sveglio (con contesto Contesto: Qualsiasi?)'. – Jereme