我在UITableView
中有一个侧边栏,长按一个单元格后会显示。侧边栏有一些自定义按钮,可以提供更多功能。
如果UITableView
上有用户标签,我会检查该点的位置。如果它在侧边栏之外,那么我将关闭它。
这里的问题是,如果用户尝试滚动(这里约有100行),侧边栏就会停留在确切位置。因此,我的目标是防止用户在侧视图出现时滚动桌面。 (我稍后还会突出显示所选行。)
我创建了UIGestureRecognizer
:
tapGesture = UITapGestureRecognizer(target: self, action: "handleTap:")
view.addGestureRecognizer(tapGesture!)
并检查位置:
func handleTap(recognizer: UITapGestureRecognizer){
let location = recognizer.locationInView(view)
if !CGRectContainsPoint(contentView.frame, location){
// dismiss
}
我有一个代表,告诉我是否存在侧视图,但如果我尝试设置:
tableView.userInteractionEnabled = false
我无法点击侧视图,因此禁用了所有用户互动。
有没有办法只禁用滚动?
答案 0 :(得分:5)
如此简单,只需写下这个
tableView.scrollEnabled = NO;