我有一个带有静态单元格的UITableViewController。当我执行推送搜索时,动画有点断断续续。我已经弄清楚哪行代码给了这个问题。在UITableViewController的viewWillAppear(_ :)方法中,我正在设置self.tableview.isHidden = true。如果我删除这行代码,则可以正常工作。但是,在进行网络呼叫时,我需要此行,并且仅在收到响应后才显示表格视图。任何解决此问题的方法将不胜感激。
答案 0 :(得分:0)
您应该从情节提要中设置TableView的“隐藏”属性。您可以在“属性”检查器的“视图”>“工程图”下找到此复选框。您可以找到此here的屏幕截图。
话虽如此,您应该找到一种更好的方法来表明正在进行API调用。我将使用您的视图控制器可以遵循的协议。
protocol ActivityIndicating {
func showLoading()
func hideLoading()
}
在ViewController类中,您将拥有类似的内容
class ViewController: UIViewController, ActivityIndicating {
//protocol methods
func showLoading() {
//implement logic to hide tableview, show indicator, etc.
}
func hideLoading() {
//implement logic to show tableview, hide indicator, etc.
}
func someFunctionThatMakesAPIcalls() {
showLoading()
//makeAPICall and call hideLoading() once the api succeeds or fails
}
}