self.title sta tornando (null)
-
06-07-2019 - |
Domanda
Utilizzando un controller di navigazione, sto inviando una nuova visualizzazione e impostando il titolo in modo dinamico:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
int countryIndex = [indexPath indexAtPosition: [indexPath length] - 1];
NSString *selectedCountry = [[countrysData objectAtIndex: countryIndex] objectForKey: @"title"];
scheduleState *scheduleStateViewController = [[scheduleState alloc] initWithStyle:UITableViewStyleGrouped];
[self.navigationController pushViewController:scheduleStateViewController animated:YES];
scheduleStateViewController.title = selectedCountry;
[scheduleStateViewController release];
CountryData è un array mutabile creato da un feed XML.
Ora quando vado alla vista successiva, viene visualizzato correttamente, tuttavia quando provo a fare un NSLog all'interno del nuovo viewController, si registra come (null):
NSLog(@"The title is: %@", self.navigationItem.title);
27-10-2009 11: 30: 20.416 myApp [50289: 20b] Il titolo è: (null)
Devo usare il titolo come parametro per afferrare una query del servizio web ...
Qualche idea?
Soluzione
Se stai tentando di registrare il titolo nel -viewDidLoad
del controller o qualcosa di simile, non riesce perché stai impostando il titolo dopo spingendo il controller di visualizzazione. Imposta il titolo del controller prima di spingerlo e dovrebbe funzionare meglio.
L'unica altra ragione per cui potrebbe essere nulla è se la variabile selectedCountry
è zero. Accedi direttamente per assicurarti.