【发布时间】:2018-06-09 18:25:17
【问题描述】:
在我的rootviewcontroller 中,导航菜单下方有三个选项卡,每个选项卡代表一个产品列表,在导航菜单中,我有一个带有数字的购物车图标,以显示购物车中图标的数量。
每个选项卡都是一个单独的viewcontroller,它们都在rootviewcontroller 中引用,如下所示:
override func viewControllers(for pagerTabStripController: PagerTabStripViewController) -> [UIViewController] {
let layout = UICollectionViewFlowLayout()
let firstTab = FirstTabController(collectionViewLayout: layout)
let seccondTab = SeccondTabController(collectionViewLayout: layout)
let thirdTab = ThirdTabController(collectionViewLayout: layout)
return [firstTab ,seccondTab ,thirdTab ]
}
我在defaultviewcontroller 中创建了一个函数来重置导航菜单中的购物车编号,但我不知道如何从firsttabController 触发此函数
这是我在firsttabcontroller中的函数
func AddToCart(sender:UIButton) {
let activityIndicatorView = NVActivityIndicatorView(frame: self.view.frame, type: .circleStrokeSpin, color: .red, padding: 170)
self.view.addSubview(activityIndicatorView)
activityIndicatorView.startAnimating()
let parameters : [String: Any] = [
"productid": sender.tag ,
"quantityid": 1
]
ApiServiceCart.sharedInstance.addProductToCartCatalog(parameters: parameters) { (success) in
activityIndicatorView.removeFromSuperview()
if success == true {
// here i want to fire DefaultController().setupNavigationMenu()
self.displayMessage(Title: MessageTitle.Successfull.rawValue, Message: Message.AddToCart_Successfull.rawValue)
}
else {
self.displayMessage(Title: MessageTitle.Error.rawValue, Message: Message.AddToCart_Error.rawValue)
}
}
}
我尝试了协议委托,但没有成功
github.com/kavehnaseri/Protino/blob/master/Protino。 我想从默认控制器调用的函数是 (setupNavBarButtonsWithCartOnLeft) wichi 在 helper/extension+UIViewController 中
【问题讨论】:
-
您的确切问题标题出现了许多关于堆栈溢出的重复问题。
-
显示更多关于重置的代码:defaultviewcontroller,也许你在 github 上有它,所以我可以看看并贡献一下
-
@ADProgress,这是链接:github.com/kavehnaseri/Protino/blob/master/Protino。我想从默认控制器调用的函数是 (setupNavBarButtonsWithCartOnLeft) wichi 在 helper/extension+UIViewController
-
在下面查看我的答案 我已经在 viewDidLoad 中添加了对该方法的调用,但您可以在需要的任何地方添加它,因为它可以访问
标签: swift xlpagertabstrip