- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个带有四个 TabBaritem
的 UITabBarController
,并且我在每个 ViewConroller 中都有 leftMenu。左侧菜单选择导致呈现每个 ChildViewController。所以我使用 NavigationController 在点击左侧菜单行时显示每个 subview Controller 。但问题是,选定的 TabBarItem
没有改变,新选定的 TabBarItem
呈现在与我选择的 Controller 相同的 ViewController
中 ChildViewController
.
例如:如果我在 secVC 中并选择左侧菜单以导航到 firstVC 它在 sec tabBarItem 中呈现 firstVc。如果我在一些功能之后 我再次点击 sec tabBarItem 它将显示第一个 VC。但我有 在第一个 tabBarItem 中显示 FirstVc
我的左边菜单选择代码是,
if sender.tag == 0 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "HomeVC")as? HomeVC
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 1 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "TileDetailsVC")as? TileDetailsVC
navVc?.leftMenuPrdctId = 1
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 2 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "OrderHistoryVC")as? OrderHistoryVC
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 3 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "TileDetailsVC")as? TileDetailsVC
navVc?.leftMenuPrdctId = 3
self.navigationController?.pushViewController(navVc!, animated: true)
}
else if sender.tag == 5 {
let navVc = self.storyboard?.instantiateViewController(withIdentifier: "SettingsVC")as! SettingsVC
self.navigationController?.pushViewController(navVc, animated: true)
}
任何人请帮助我如何在点击左侧菜单行时显示特定的 tabBarItem。
最佳答案
正如 Diksha Bhargava 所说,您可以只更改 UITabBarController 的选定索引,新的 View Controller 就会显示出来。更改选定的索引将更改选定的 View Controller ,选定的 View Controller 是显示在 UITabBarController 中且其选项卡被选中的 View Controller 。
因此,更改 UITabBarController 的选定索引会更改 View Controller 和选定的选项卡。
这样做:
yourUITabBarController.selectedIndex=x
//where x is the index of the desired view controller
//in the array of viewControllers the tab bar has
(默认情况下,选定的 View Controller 应对应于选定的选项卡,包括它的变化)
实际上会在该选项卡上显示 View Controller ,并在选项卡栏中使用其选项卡栏项目。以编程方式更改选项卡栏 Controller 的显示 View Controller 的简便方法。
您可以在 UITabController 上查看 apple 的文档并查看以下信息:
选择索引
选择 View Controller
关于ios - 呈现特定的 TabBarItem - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54321167/
在上图中, 在Tabbar中选中1. tabbar itemA -> C -> D并且比 在Tabbar中选中 3. tabbar item按照顺序E -> D -> A App 会记住 1. tab
我定制了一个UITabBar。在 UITabBar 的中心添加一个按钮。 tabbar 有 4 个 tabbaritems 和一个按钮。但是当我点击第三个 tabbaritem 时,它的位置变成了第四
我有 5 tabBarItem在我的UITabBarController 一种情况,我必须打开 UITabBarItem 的第一个索引点击第三个UITabBarItem我的方法如下: extensio
我正在为我的 tabBarItem 添加图像 playerViewController.tabBarItem.image = UIImage(named: "Icon-Small") “小图标”是29
我有 TabBarItem,它已被禁用。如果用户点击它,我想显示警报。 但是这个功能不起作用: override func tabBar(tabBar: UITabBar, didSelectItem
我有一个带两个 ViewController(A 和 B)的 TabBar Controller ,我想更改两个 Tab Bar 项目的字体大小。当加载第一个选项卡 A ViewController
我想知道您将如何通过代码更改 UITabBar 的选定选项卡? 是的,我知道这个帖子是以下内容的副本: Objective C: How to switch from one Tab bar to a
所以这就是我要说的问题。 如您所见,在顶部的 Tab1 选择图像前面有一个小空间。我不知道如何删除那个空间。目前,项目没有选择图像和图像分配,因为我不需要一个。我只需要选项卡中的文本。所以对于选择图像
我正在根据上下文更改 tabBarItem 的图像 if (user == nil) { self.navigationController?.tabBarItem.title
我目前正在为我的每个标签栏项目添加图像。我喜欢的一幅图像的尺寸比条形项目的面积大得多。当我在 Storyboard 中设置条形项的图像并运行模拟器时...带有该图像的条形按钮会覆盖整个屏幕。 现在我认
我正在使用 TabBarController,其中有超过 10 个 View Controller (这就是为什么我可以看到“更多”选项卡,我可以在其中访问其余 View )。我的问题是: 有什么办法
在 TabBar 中,默认选择第一个 TabBarItem。 但是是否有可能在最初时保持所有选项卡未选中? 首先可以看到下图 TabItem 是默认选中的 Tab Bar Image 最佳答案 我们无
我的应用程序中有 TabBarViewController,当我在 iOS 11 上运行该应用程序时,TabBarItem 显示正常,但当我在 iOS 10 上运行它时,图像被拉伸(stretch)。
在用户修改原始排序后,是否有一种简单的方法可以对 UITabBarController 执行此操作?我得到了以下代码,但感觉有点笨拙。 class TabBarViewController: UITa
我有一个基于 UITabBar 的应用程序,在一个 TabBar 按钮上我有一个导航 Controller 。当我移动到导航 Controller 时,需要删除标签栏突出显示选项。不应选择标签栏按钮。
我有一个 UIButton,单击它会更改该 View 的 tabbaritem 图像,而且整个 View 必须替换为另一个 View ... 我怎样才能做到这一点? 请帮忙! 谢谢, 最佳答案 你好,
如何将 TabBarIcon 放置在中间?它应该放置在这个红色圆圈的顶部。 我的红圈代码: let numberOfItems = CGFloat(tabBar.items!.count) let t
我将 UITabBarController 用于 iOS 应用程序。它有 3 个选项卡。例如 tab1(当前选项卡)、tab2 和 tab3。我想在单击 tab1 上的按钮时在 tab3 图标上放置一
就像我在标题中所说,我的问题是: 有没有办法在不删除 View 的情况下删除一个选项卡项目? 我已阅读有关 UITabBarController 的内容,但删除了 View 而不是项目。 我的 Tab
我在 UIViewController 上有一个 UITabBar,我已经设置了 UITabBar 委托(delegate),这就是我在 中设置 UITabBar 的方式code>viewDidLoa
我是一名优秀的程序员,十分优秀!