Apple UITabBarItem 类的默认“触摸”事件是啥?

Posted

技术标签:

【中文标题】Apple UITabBarItem 类的默认“触摸”事件是啥?【英文标题】:What is the default "touch" event on the Apple UITabBarItem class?Apple UITabBarItem 类的默认“触摸”事件是什么? 【发布时间】:2012-10-10 12:40:19 【问题描述】:

我正在通过在默认 tabBar 顶部添加子视图并以编程方式触发所选事件来进行自定义 TabBar。它运作良好,但问题是我的 tabBar 与 Apple 的行为不完全相同: 在 Apple 默认设置中,如果您在不松开的情况下触摸(按下),它将选择选项卡,但不会在您触摸时立即选择(可能是 0.2 秒后)。

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

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

(我以为是Touch Down,但如果是,为什么会出现这种“延迟”?)

谢谢。

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

以上是关于Apple UITabBarItem 类的默认“触摸”事件是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Apple Watch 强制触控菜单

使用 UITabbaritem 作为 UIButton

更改默认“未选择”UITabBarItem 图像颜色

如何在我的单点触控项目中使用 JdSoft.Apple.Apns.Notifications

使用 BannerViewController 时没有 UITabBarItem 图像

apple watch se os8 初体验 辅助触控