Estensione del modello di utilità
-
03-07-2019 - |
Domanda
Estensione del modello di utilità
Sto lavorando con il modello di utilità Xcode (lato principale / lato opposto) e devo aggiungere una nuova schermata. Ho aggiunto:
docView.xib (copy of FlipsideView.xib)
docView.m
docView.h
docViewController.m
docViewController.h
In rootViewController.h ho aggiunto:
UINavigationBar *docNavigationBar;
docViewController *docViewController;
@property (nonatomic, retain) UINavigationBar *docNavigationBar;
@property (nonatomic, retain) docViewController *docViewController;
In rootViewController.m, ho sintetizzato le aggiunte:
@synthesize docNavigationBar;
@synthesize docViewController;
Importa il mio .h in rootViewController.m:
#import "docViewController.h"
Quando provo a compilare, errore con:
RootViewController.m:22: error: syntax error before 'docViewController'
Avvertenze:
RootViewController.m:160: warning: property 'docViewController' requires method '-docViewController' to be defined - use @synthesize, @dynamic or provide a method implementation
RootViewController.m: 160: avviso: la proprietà 'docViewController' richiede che sia definito il metodo 'setDocViewController:': utilizzare @synthesize, @dynamic o fornire un'implementazione del metodo
Cosa mi sono perso?
Soluzione
In realtà, penso che intendesse mettere docViewController (è il nuovo controller di visualizzazione, giusto?). In ogni caso, se questo è ciò che intendevi, e non FlipsideViewController come dice Eric, il tuo problema è che lo hai chiamato come la proprietà. Cattiva idea. La normale convenzione obiettivo-C consiste nel mettere in maiuscolo la prima lettera dei nomi delle classi, quindi in minuscole quando le si utilizza come proprietà, ecc.
docViewController *docViewController;
dovrebbe essere:
DocViewController *docViewController;
Funzionerà molto meglio in questo modo :)
Altri suggerimenti
In rootViewController.h, assomiglia alla tua linea di dichiarazione:
docViewController *docViewController;
Dovrebbe essere:
FlipsideViewController *docViewController