OGeek|极客世界-中国程序员成长平台

标题: ios - 快速单击导航栏按钮,导致 View 被多次推送 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 17:08
标题: ios - 快速单击导航栏按钮,导致 View 被多次推送

我正在使用 3 个 View Controller A、B、C。 在 Storyboard 中添加了从 A 到 B(例如 segue1)和 B 到 C(例如 segue2)的推送转场。 A 嵌入在导航 Controller 中。

在 A 中,我添加了一个右栏按钮并对其操作执行 segue1。 同样在 B 中,我正在添加另一个右栏按钮并对其操作执行 segue2。

如果我多次快速单击按钮, View B 会被推送一次,然后 View C 会被推送多次。

这是一个已知问题吗?或者我的实现有什么问题吗?

编辑:添加代码

ViewController A:

- (void)viewDidLoad {
    [super viewDidLoad];

    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self actionselector(insertB];
    self.navigationItem.rightBarButtonItem = addButton;
}

- (void)insertBid)sender {
    [self performSegueWithIdentifier"segue1" sender:sender];
}

View Controller B:

- (void)viewDidLoad {
    [super viewDidLoad];
    UIBarButtonItem *addButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self actionselector(insertC];
    self.navigationItem.rightBarButtonItem = addButton;
}

- (void)insertCid)sender {
    [self performSegueWithIdentifier"segue2" sender:sender];
}



Best Answer-推荐答案


按下时将按钮的userInteractionEnabled属性设置为false,按下后将其更改为true

关于ios - 快速单击导航栏按钮,导致 View 被多次推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38696588/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4