Apple UITabBarItem 类上的默认"touch"事件是什么?



我正在通过在默认选项卡栏顶部添加子视图并以编程方式对所选事件进行三重处理来执行自定义 TabBar。它运行良好,但问题是我的标签栏的行为与苹果标签栏不完全相同:在Apple默认的标签上,如果您触摸而不松开(向下触摸),它将选择选项卡,但不会在您触摸时立即选择选项卡(可能是0.2秒后)。

  • 如果我在自定义 TabBar 上放置Touch Down事件,它会立即触发该选项卡。
  • 如果我放置一个Touch Up Inside事件,它只会在发布时触发......

那么,苹果在他的 TabBarItem 类(或者可能是父类)中使用的触摸事件是什么?

(我以为是Touch Down,但如果是,为什么事件会有这种"延迟"?

谢谢。

它可能正在使用UILongPressGestureRecognizer。 例如:

UILongPressGestureRecognizer *longPressGR = [[UILongPressGestureRecognizer alloc]
    initWithTarget:self action:@selector(longPressDetected:)];
longPressGR.delegate = self;
longPressGR.minimumPressDuration = 1.0;
[yourView addGestureRecognizer:longPressGR];

最新更新