Cuando el código con la aplicación de navegación iOS, he enfrentan con problemas para esto:viewWillAppear vs viewDidLoad ios
donde puedo poner el "initdata" método para UITableView? en viewWillAppear o viewDidLoad?
por favor ayúdenme.
Cuando el código con la aplicación de navegación iOS, he enfrentan con problemas para esto:viewWillAppear vs viewDidLoad ios
donde puedo poner el "initdata" método para UITableView? en viewWillAppear o viewDidLoad?
por favor ayúdenme.
Usted puede poner initData como por su exigencia de la aplicación,
si la tabla tiene que cargar los datos cada vez con nuevos datos, entonces debería estar bajo
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
//initData
}
De lo contrario, si las necesidades de mesa que se vuelva a cargar por una sola de datos que no varía o no hay ninguna operación de edición realizada en los datos, se debe utilizar
- (void)viewDidLoad {
[super viewDidLoad];
//initData
}
si pongo el código en ambos lugares. Se ejecutará ese código 2 veces cuando inserte esta tableView en un UInavigationcontroller – Clover03ti05
Debe colocarlo en "viewwillAppear" solamente, como su matriz según el valor de cambio de la vista secundaria. Funcionará. –
Nunca inicie datos en viewWillAppear. Dependiendo de la forma en que cargue el controlador de visualización en la pantalla (en otro VC o en todos los segmentos), no podrá invocarse en absoluto. –
es mejor llamar a que, en initWithNibName:bundle:
o initWithCoder:
método y liberar los datos cargados en -(void)dealloc
.
Además, puede tenerlo en viewDidLoad
y liberar los datos cargados en viewDidUnload
. Pero es mejor no llamar a que a partir de viewWillAppear:
Editar:
espero que array está en función de la selección en la vista padre. En ese caso, escriba un método setter, que establece la condición e inicie los datos antes de presionar el controlador de vista.
DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
// Pass the selected object to the new view controller and depend on that, load the data.
[detailViewController initData:(id)[_list objectAtIndex:indexPath.row]];
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
en mi caso, tengo un NSArray necesito prepararme para uitableview. y el valor de esta matriz según el valor de cambio de la Vista hija. – Clover03ti05
He editado mi respuesta – Ilanchezhian
Depende de lo que quiere decir con datos de inicio. – Sulthan
¿Cuál es su requisito? –