Когда я запускаю tableView.reloadData()
в UITableViewController, он работает, но когда я вызываю функцию для обновления этого представления таблицы с другого контроллера, это не сработает.Обновить данные tableview в swift
// Этот способ работает нормально
Func reloadTableView() {
let path = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first as String
let db = Database("\(path)/db.sqlite");
conversasArray.removeAll(keepCapacity: true);
let stmt = db.prepare("SELECT ZNOME,ZUlTIMAMSG,ZIDMENSAGEM,ZIMAGE FROM ZUSUARIO,ZCHAT WHERE ZTELEFONE = ZTO")
var objetoConversa : AnyObject = [];
for row in stmt {
objetoConversa = ["ZNOME":"\(row[0]!)", "ZUlTIMAMSG":"\(row[1]!)", "ZIDMENSAGEM":"\(row[2]!)", "ZIMAGE":"\(row[3]!)"];
//Adiciona o objeto dentro do array de objetos.
conversasArray.append(objetoConversa)
}
tableView.reloadData();
}
// Но когда я делаю это другой файл tableView.reloadData() не работает.
var a = TableViewController();
a.reloadTableView();
Поскольку 'вар а = TableViewController()' создает новый и совершенно не связан табличный экземпляр контроллера ... Что вы думаете, что делает? –
Проверьте этот вопрос/ответ: http://stackoverflow.com/questions/25921623/how-to-reload-tableview-from-another-view-controller-in-swift – Shades
Я думал, что это принесет текущий экземпляр TableViewController (), Я новичок, и я все еще участвую в программе SWIFT, спасибо за решение. –