用户登录
用户注册

分享至

如何阻止 UIScrollView 吞下触摸

  • 作者: 熊宝121
  • 来源: 51数据库
  • 2022-10-21

问题描述

我的 UIScrollView 有很多子视图.当我滚动时,我想点击要拖动的子视图.有没有办法让 UIScrollView 停止吞咽触摸?或者当您取消滚动时是否可以开始新的触摸(就像它滚动并且我点击它一样,子视图也会被点击以便我可以将其拖出)?

I have UIScrollView that has many subviews. When I scroll, I want to tap on a subview which I want to be dragged. Is there a possible way to make the UIScrollView stop from swallowing touches? Or is it possible to start new touch when you cancel the scrolling (like what it scrolls and I tapped on it, the subview will be tapped as well so I can drag it out)?

推荐答案

继承 UIScrollView 并覆盖 - (BOOL)touchesShouldCancelInContentView:(UIView *)view 方法.这是一个允许 uibutton 触摸通过的示例:

Subclass UIScrollView and override the - (BOOL)touchesShouldCancelInContentView:(UIView *)view method. Here's an example to allow uibutton touches to pass through:

#import "scrollViewWithButtons.h"

@implementation scrollViewWithButtons

- (BOOL)touchesShouldCancelInContentView:(UIView *)view
{
    return ![view isKindOfClass:[UISlider class]];
}

@end
软件
前端设计
程序设计
Java相关