能否在模拟器中无需点击即可用触控板滚动TableView?
在iOS模拟器中无需点击直接用触控板滚动TableView的方法
当然可以!这个默认的点击激活限制确实挺闹心的,我之前也被困扰过,现在给你两种解决方式:
模拟器设置调整(无需代码)
这是最快捷的方法,直接改模拟器的全局设置就行:
- 打开iOS模拟器,点击顶部菜单栏的
Window->Show Keyboard/Touch Bar(快捷键:Shift + Command + K) - 在弹出的触控板配置面板里,找到**“无需点击即可使用触控板滚动”**(不同模拟器版本文字可能略有差异,找类似描述的选项),勾选它
- 设置完成后,你直接用触控板在TableView区域滑动,不用先点击激活组件就能滚动了
开发时的代码兼容(针对特定App)
如果你的App有自定义手势或者特殊设置导致还是不行,可以在代码里做些小调整:
- 确保TableView的
isScrollEnabled属性设置为true(默认就是这个值,但如果被自定义代码修改过要检查) - 如果你的页面添加了自定义
UITapGestureRecognizer,记得把它的cancelsTouchesInView设为false,避免它拦截滚动事件,示例代码:
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(handleTap)) tapGesture.cancelsTouchesInView = false view.addGestureRecognizer(tapGesture)
这样调整后,模拟器里的滚动体验就和真机一致啦!
内容的提问来源于stack exchange,提问作者SwiftiSwift




