使用自定义标签栏控制器

Tabbar Controller是iOS中最受欢迎的容器控制器之一。 几乎所有流行的应用程序都使用此控制器,例如Facebook,Youtube,Instagram,LinkedIn,Airbnb等。如果要在iOS中工作,则很有可能必须使用此组件。 标签栏控制器界面的每个标签都与一个自定义视图控制器关联。 当用户选择特定的选项卡时,选项卡栏控制器将显示相应视图控制器的根视图,以替换任何先前的视图。 在Apple提供的文档中,您可能会注意到Tabbar Controller的此示例图像:

在这里您可以看到,只需用手指轻按即可转到不同的屏幕。 导航非常方便。

今天,我们将尝试实现一个小的测试应用程序,该应用程序将使用Tabbar Controller,它具有五个选项卡,每个选项卡具有不同的背景颜色和标题。 另外,如您在上图中看到的那样,当选中某个选项卡时,该选项卡将变为黄色,而当未选中该选项卡时,该选项卡将变为灰色。 为了获得这种效果,我们将需要两个不同的图像用于相应的选定和未选定条件。

足够的理论可以使我们的手变得肮脏。 启动Xcode,创建一个新项目。 如果运行,您将看到一个空白的视图控制器。 这是因为ViewController类从情节提要中指向rootViewController,并且当然没有Tabbar控制器。 因此,让我们继续创建UITabbarController的子类,将其命名为MainTabbarController,并在AppDelegate的didFinishLaunching方法中将其设置为rootViewController。 这是该代码:

这是我们要构建的Tabbar控制器。 在这里,我们看到5种不同的视图控制器,例如Home,Search,Plus,Like和Profile控制器。 现在,搜索控制器处于选定状态。 创建一个名为setupViewControllers的函数,并将以下代码添加到该函数中:

现在,我们将向该应用程序添加一些奖励功能。 假设我们想将登录/注销功能与UITabbar Controller集成在一起。 处理这种情况的正确方法是什么? 让我们找到这个东西。 注销功能非常简单。 将以下代码放入ProfileController中:

看,没有选项卡栏项。 按下取消按钮,您将找到全部。 我特意带来了这个小功能,因为我希望您习惯于使用制表符栏控制器委托方法。
您可以从GitHub下载该应用程序的源代码。 链接在这里 :
https://github.com/salehmasum/CustomTabbarController
希望您喜欢这篇文章。 感谢您的阅读。

Interesting Posts