问题描述:
push打开一个页面后顶部的返回按钮点击无响应,也没有触发相应事件。但该页面是基于另外一个页面改的,只修改了少量文字,但另一个页面没有这个问题。
问题查找:
1、检查Button及其父控件的属性,检查User Interaction Enabled是否勾选。--未发现问题
2、检查Button是否被覆盖,通过给Button及其父控件、相邻控件设置背景色,查看Button是否被覆盖。--未发现问题
3、检查Button相关事件。--未发现问题
4、直接在Storyboard中复制没问题的Scene,运行没问题,然后修改对应的ViewController类,发现存在问题,从而问题定位到了ViewController类中。检查ViewController类中的代码发现有这么一句
[self.view configBlankPage:(_page.result.count > 0) hasError:hasError reloadButtonBlock:^(id sender) {
[self refresh];
}];
这才想起来问题所在,因为新做的页面没有数据,所以添加了空白页面,空白页面添加给了self.view导致顶部返回按钮被遮盖,而且空白页是背景色是
clearColor。
解决方法:
[self.tableView configBlankPage:(_page.result.count > 0) hasError:hasError reloadButtonBlock:^(id sender) {
[self refresh];
}];
只给tableView添加空白页。