From f9985372c6502d9405cd6a53b52f69449097d77b Mon Sep 17 00:00:00 2001 From: Niteshkumar Patel <68811947+kagnitesh@users.noreply.github.com> Date: Fri, 29 Mar 2024 14:36:19 +0530 Subject: [PATCH] Update SHCircleBarController.swift Easy to navigate to another tag programmatically. --- CircleBar/Classes/SHCircleBarController.swift | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CircleBar/Classes/SHCircleBarController.swift b/CircleBar/Classes/SHCircleBarController.swift index 5a12869..db624a4 100644 --- a/CircleBar/Classes/SHCircleBarController.swift +++ b/CircleBar/Classes/SHCircleBarController.swift @@ -159,4 +159,18 @@ extension SHCircleBarController { return view.safeAreaInsets.bottom } else { return 0 } } + + func switchToTab(at index: Int) { + guard let tabBar = self.tabBar as? MainTabBar else { return } + tabBar.select(itemAt: index, animated: true) + shouldSelectOnTabBar = false + selectedIndex = index + + let tabWidth = self.view.bounds.width / CGFloat(self.tabBar.items?.count ?? 4) + let circleX = (tabWidth * CGFloat(index)) + (tabWidth / 2) - 30 + let circleY = self.tabBar.frame.origin.y - 40 + UIView.animate(withDuration: 0.3) { + self.circleView.frame = CGRect(x: (tabWidth * CGFloat(index) + tabWidth / 2 - 30), y: self.tabBar.frame.origin.y - 15, width: 60, height: 60) + } + } }