点击某个按钮时,我需要刷新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) –