Come faccio a rifattare il controller di visualizzazione massivo

4

Ho un controller di visualizzazione che ha 5 diverse visualizzazioni secondarie, queste sottoview sono modificate in base ad alcune condizioni, quindi ci sono funzioni che applicano il colore di sfondo e aggiungono alcune estetiche secondarie alle viste.

Ho separato le funzioni nel viewcontroller solo per visualizzazioni Applica i colori, aggiungendo visualizzazioni e pulsanti touch ecc.

Solo per controller viewDidLoad, ViewDidAppear ecc.

Rest I lo chiamo come modello, come fa alcuni calcoli e altre cose. Calcolo dei vincoli e delle costanti per la vista. Qualcuno mi può suggerire comunque come incorporare la vista, il controller e le funzioni del modello in una classe separata? Non mi piace che tutto si affacci nello stesso viewcontroller.

    
posta vin 07.09.2016 - 09:32
fonte

3 risposte

1

Ti suggerisco di aggiungere ViewModels.

Ad esempio, supponiamo di avere "quando Model.State = cancellato, il colore è rosso"

Crea un ViewModel con proprietà Color e un costruttore che prende il modello come argomento e calcola e imposta il colore.

Passa questo ViewModel alla vista anziché al modello.

    
risposta data 07.09.2016 - 09:46
fonte
-3

In base allo stato attuale, una soluzione semplice ma organizzata sarebbe quella di creare qualcosa come una directory "[YourViewController] Views.

In questa directory crea file di classe separati per ogni sottoview e migra il rispettivo codice correlato dal tuo file del controller di visualizzazione. Puoi rendere ciascuna una sottoclasse di UIView.

    
risposta data 09.03.2017 - 11:47
fonte
-3

In base al problema, puoi anche provare ad estendere il file di visualizzazione a moduli secondari di visualizzazione secondaria e attivarli quando il modello cambia.

    
risposta data 21.03.2017 - 11:12
fonte

Leggi altre domande sui tag