gpt4 book ai didi

ios - 如何从 TabBar Controller 禁用滑动手势识别器

转载 作者:行者123 更新时间:2023-11-29 01:33:18 25 4
gpt4 key购买 nike

我正在使用 11 个选项卡项。在 4 个选项卡项之后,它将显示更多菜单,当我单击“更多”按钮时,将显示剩余的选项卡列表 - 这应该是这样工作的。

我的问题是,当我从屏幕左侧滑动时,会填充此“更多”选项卡列表。我怎样才能避免这种情况?

最佳答案

您可以在标签栏 Controller 中遍历手势并禁用滑动

    for gesture in tabBarController.view.gestureRecognizers! {
if let swipeGesture = gesture as? UISwipeGestureRecognizer {
if (swipeGesture.direction == .Left) {
swipeGesture.enabled = false
print("disabled")
}
}
}

此处 tabBarController 是标签栏 Controller 的有效实例。

您可能需要对 .Left.Right 进行一些试验和错误,并仅在 Controller 的 View 或其中一个 subview 上运行它,但这应该绝对禁用该手势。

此外,尽管不太可能,但请注意同一方向的多个滑动手势,如果有,请确保仅禁用相关的手势。

在 ObjC 中:

for (UIGestureRecognizer *gesture in tabBarController.view.gestureRecognizers) {
if([gesture isKindOfClass:[UISwipeGestureRecognizer class]]) {
if(((UISwipeGestureRecognizer *)gesture).direction == UISwipeGestureRecognizerDirectionLeft) {
gesture.enabled = false;
}
}
}

关于ios - 如何从 TabBar Controller 禁用滑动手势识别器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33231619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com