防止将下一个视图控制器推到两次



我想推到另一个视图控制器,但是当您点击按钮几次时,它会将视图控制器推到两次或更多。如何防止推动多次发生。

 DispatchQueue.main.async {
         let vc: MyOrderDetailsViewController? = self.storyboard?.instantiateViewController(withIdentifier: "orderDetailsVC") as? MyOrderDetailsViewController
         self.navigationController?.pushViewController(vc!, animated: true)
    }

async方法创建线程&在后台推动VC,因此请勿使用异步方法推动任何视图控制器...

它将按照按下的时间运行您的代码,而是使用以下代码。这将不允许您再次单击或重新运行相同的代码,直到完成任务。

func pushTap()
{
     let vc: MyOrderDetailsViewController? = self.storyboard?.instantiateViewController(withIdentifier: "orderDetailsVC") as? MyOrderDetailsViewController
     self.navigationController?.pushViewController(vc!, animated: true)
}

希望这会有所帮助..谢谢

最新更新