點擊某個按鈕時,我需要刷新view controller
。簡單地激活viewDidLoad()
似乎沒有爲我需要做的工作。但是,當我離開view controller
然後回到它,它似乎完美的工作?重新加載視圖控制器swift
如何刷新/重新加載view controller
就好像我已經離開它然後再次回到它,而沒有真正離開它?
點擊某個按鈕時,我需要刷新view controller
。簡單地激活viewDidLoad()
似乎沒有爲我需要做的工作。但是,當我離開view controller
然後回到它,它似乎完美的工作?重新加載視圖控制器swift
如何刷新/重新加載view controller
就好像我已經離開它然後再次回到它,而沒有真正離開它?
無論您在viewDidLoad
中編寫的代碼是什麼,請嘗試在viewWillappear()
中添加該代碼。我認爲這會解決你的問題。
這可能有點晚,但是你試過loadView()
?
public func loadView()//這是子類應該創建自定義視圖層次的地方,如果它們不使用nib。 **不應該直接調用。[moreHere](http://stackoverflow.com/a/8876346/1264893) –
我不認爲他是在說要直接調用它。他正在說要在那裏添加代碼。 –
你不應該調用viewDidLoad方法手動, 相反,如果你要重新加載任何數據或任何用戶界面,你可以這樣做:當你要重新加載數據並刷新接口
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()
}
,你可以調用self.loadData()
你如何做這個實際的刷新界面部分? –
當您想重新載入時,再次調用loadData以從模型中獲取數據。在tableView中調用reloadData()或在常規視圖中setNeedsDisplay。 – Vincent
//這是子類應該創建自定義視圖層次的地方,如果它們不使用nib。不應該直接調用。 –
在任何時候,打電話時要重新加載的viewController的意見或任何看法
<View you want to reload>.setNeedsLayout()
<View you want to reload>.layoutIfNeeded()
究竟是你想刷新什麼? – streem
您是否找到任何解決方案? –
這就是我回答的另一個問題。請看我的回覆: [用新數據更新視圖控制器](https://stackoverflow.com/questions/31110923/navigate-swipe-between-articles-in-section-using-table-view-controller/ 46576097#46576097) –