ios - objective - Swift: recargar un controlador de vista
reload viewcontroller (5)
En Swift 4:
self.view.layoutIfNeeded()
Necesito actualizar un view controller
cuando se toca un botón determinado. Simplemente activar viewDidLoad()
no parece funcionar para lo que necesito hacer. Sin embargo, cuando salgo del view controller
luego vuelvo a él, ¿parece funcionar perfectamente?
¿Cómo puedo actualizar / recargar un view controller
como si lo hubiera dejado y luego volver a él sin siquiera dejarlo?
En cualquier punto, llame cuando desee volver a cargar la vista del Controlador o cualquier vista
<View you want to reload>.setNeedsLayout()
<View you want to reload>.layoutIfNeeded()
Esto puede ser un poco tarde, pero ¿intentaste llamar a loadView()
?
Independientemente del código que esté escribiendo en viewDidLoad
, intente agregarlo en viewWillappear()
. Creo que esto resolverá tu problema.
No debe llamar al método viewDidLoad manualmente. En su lugar, si desea volver a cargar cualquier dato o cualquier UI, puede usar esto:
override func viewDidLoad() {
super.viewDidLoad();
let myButton = UIButton()
// When user touch myButton, we''re going to call loadData method
myButton.addTarget(self, action: #selector(self.loadData), forControlEvents: .TouchUpInside)
// Load the data
self.loadData();
}
func loadData() {
// code to load data from network, and refresh the interface
tableView.reloadData()
}
Cuando quiera volver a cargar los datos y actualizar la interfaz, puede llamar a self.loadData ()