ho una classe personalizzata che ha come variabile di istanza una coordinata:Maneggiare le strutture vuote in Objective-C (coordinate in classe personalizzata)
CLLocationCoordinate2D eventLocation;
@property(nonatomic) CLLocationCoordinate2D eventLocation;
Sto parsing di un file XML che ha un campo facoltativo quello può o non può essere là. Se è ho impostato in questo modo:
CLLocationCoordinate2D location;
NSArray *coordinateArray = [paramValue componentsSeparatedByString:@","];
if ([coordinateArray count] >= 2) {
location.latitude = [[coordinateArray objectAtIndex:0] doubleValue];
location.longitude = [[coordinateArray objectAtIndex:1] doubleValue];
} else {
NSLog(@"Coordinate problem");
}
info.eventLocation = location;
Quello che faccio questo è fondamentalmente aggiungere un'annotazione su una mappa
annotation.coordinate = alert.info.eventLocation;
so che ho bisogno di fare qualche controllo qui per fare in modo che che esiste ma non mi è permesso fare un if (info.eventLocation == nil)
o anche if (info.eventLocation.latitude == nil)
Questa sembra una domanda molto semplice ma ho fatto qualche ricerca e nessuno è stato in grado di fornire veramente una buona risposta/idea. La mia architettura è completamente fuori?
Quando aggiungo questo al mio file h del mio oggetto personalizzato Ricevo errori: elemento Initializer non è costante (nei pressi di inizializzazione per 'EmptyLocationCoordinate.latitude') elemento Initializer non è costante (nei pressi di inizializzazione per 'EmptyLocationCoordinate.longitude') – aleclerc
in realtà, il alert.info.eventLocation = EmptyLocationCoordinate dà ancora un "operandi non validi ai binari! =" Errore – aleclerc
Ah, forse avete bisogno di #define EmptyLocation. –