个人喜好,习惯先自定义UITabBarController,方便管理

1、创建UITabBarController的子类 RoottabBarController

classRoottabBarController:UITabBarController{

overridefuncviewDidLoad(){
super.viewDidLoad()
}

2、在AppDelegate类里指定RoottabBarController为根视图

classAppDelegate:UIResponder,UIApplicationDelegate{

varwindow:UIWindow?


funcapplication(application:UIApplication,didFinishLaunchingWithOptionslaunchOptions:[NSObject:AnyObject]?)->Bool{
self.window=UIWindow(frame:UIScreen.mainScreen().bounds)
self.window?.makeKeyAndVisible()
letroot=RoottabBarController()
self.window?.rootViewController=root
//Overridepointforcustomizationafterapplicationlaunch.
returntrue
}

3、创建2个空Controller如HomeViewController、SortViewController、OtherViewController

4、在RoottabBarController类里创建tabbar的子控制器

classRoottabBarController:UITabBarController{

overridefuncviewDidLoad(){
super.viewDidLoad()

//创建tabbar的子控制器
self.creatSubViewControllers()
}

funccreatSubViewControllers(){
letfirstVC=HomeViewController()
letitem1:UITabBarItem=UITabBarItem(title:"第一页面",image:UIImage(named:"tabbar_home"),selectedImage:UIImage(named:"tabbar_home_selected"))
firstVC.tabBarItem=item1

letsecondVC=SortViewController()
letitem2:UITabBarItem=UITabBarItem(title:"第二页面",image:UIImage(named:"tabbar_sort"),selectedImage:UIImage(named:"tabbar_sort_selected"))
secondVC.tabBarItem=item2

letotherVC=OtherViewController()
letitem3:UITabBarItem=UITabBarItem(title:"第三页面",image:UIImage(named:"tabbar_other"),selectedImage:UIImage(named:"tabbar_other_selected"))
otherVC.tabBarItem=item3

lettabArray=[firstVC,secondVC,otherVC]
self.viewControllers=tabArray
}

运行后效果

swift-UI控件开发之UITabBarController的创建的更多相关文章

  1. ios – UITabBarController – Child(Tab)ViewControllers的不正确和不一致的边界

    我有一个带有两个选项卡的UITabBarController.每个选项卡都是UITableViewController.当UITabBarController出现时,两个选项卡视图都有不正确的边界.第一个选项卡正确位于导航栏下方,但延伸到底部的选项卡栏下方.第二个选项卡是另一种方式,从导航栏下方开始,但在底部的选项卡栏之前正确停止.我正在创建和呈现TabBarController,如下所示:然后在

  2. UITabBarController和UINavigation Controller的iOS8旋转问题

    iOS8有一个问题.这里我有我的视图层次结构.窗口==>UITabBarController==>2标签标签1==>UINavigationController1==>UIViewController1作为根视图控制器标签2==>UINavigationController2==>UIViewController2作为根视图控制器现在一切都很完美,只有一个方向.但问题在于此测试步骤:>将日志放入V

  3. ios – 如何在Swift的Storyboard上使用UITabBarController内的导航控制器

    我正在使用swift.我想使用TabBar中的导航与Storyboard.起初,第一个显示屏显示在标签菜单的内部.但是当我移动到第二个显示时,第二个显示没有标签菜单显示.我选择了segue类型“show”如何在所有视图上继续显示标签菜单?

  4. ios – 以编程方式创建uiTabBarController

    你会在哪里创建它?tabBarController必须是根视图控制器,不能是任何其他视图控制器的子级.Btw,确保你实现:

  5. ios – 编辑按钮不显示在UITabBarController的MoreNavigationController中

    一个UITabBarController被推到堆栈上:一旦呈现,更多的标签按钮正确显示,但编辑按钮重新排列标签栏不会.根据docsontheMoreNavigationController:TheinterfaceforthestandardMoreitemincludesanEditbuttonthatallowstheusertoreconfigurethetabbar.Bydefault,t

  6. ios – 使用故事板时,从UITabbarController添加/删除或显示/隐藏选项卡栏项目

    显示和隐藏也会很好.在故事板之前,您可以调用setViewController,但是在使用分片时似乎不是正确的方法.解决方法您可以按如下方式删除标签栏项目:

  7. ios – 手动模式切换不起作用,View Controller不在窗口层次结构中?

    我一直在搜索网页和StackOverflow几个小时,我无法解决这个问题.这是希望你们都看到我的错误,因为我找不到.我刚刚启动了一个简单的基于故事板的应用程序.初始ViewController是UITabBarController的一个实例,该模板具有两个虚拟ViewController.启动后,我需要检查设备是否登录到外部服务.如果不是,我会显示一个允许用户认证的模态ViewController

  8. ios – 检测从App Delegate通过UITabBarController按下tabBar项目的时间

    本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  9. Swift排序Sort函数用法

    简书地址:http://www.jianshu.com/p/ad71c94e7bc6摘自stackoverflow的问答用了几分钟做的简单翻译一个例子直接贴代码,不过多解释下面是闭包的进阶使用

  10. Swift:闭包(Closures)

    在Swift中的闭包与C、OC中的blocks和其它编程语言(如C#)中的lambda,javascript中的函数嵌套等类似。在Swift中闭包的最简单形式是嵌套函数。

随机推荐

  1. Swift UITextField,UITextView,UISegmentedControl,UISwitch

    下面我们通过一个demo来简单的实现下这些控件的功能.首先,我们拖将这几个控件拖到storyboard,并关联上相应的属性和动作.如图:关联上属性和动作后,看看实现的代码:

  2. swift UISlider,UIStepper

    我们用两个label来显示slider和stepper的值.再用张图片来显示改变stepper值的效果.首先,这三个控件需要全局变量声明如下然后,我们对所有的控件做个简单的布局:最后,当slider的值改变时,我们用一个label来显示值的变化,同样,用另一个label来显示stepper值的变化,并改变图片的大小:实现效果如下:

  3. preferredFontForTextStyle字体设置之更改

    即:

  4. Swift没有异常处理,遇到功能性错误怎么办?

    本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请发送邮件至dio@foxmail.com举报,一经查实,本站将立刻删除。

  5. 字典实战和UIKit初探

    ios中数组和字典的应用Applicationschedule类别子项类别名称优先级数据包contactsentertainment接触UIKit学习用Swift调用CocoaTouchimportUIKitletcolors=[]varbackView=UIView(frame:CGRectMake(0.0,0.0,320.0,CGFloat(colors.count*50)))backView

  6. swift语言IOS8开发战记21 Core Data2

    上一话中我们简单地介绍了一些coredata的基本知识,这一话我们通过编程来实现coredata的使用。还记得我们在coredata中定义的那个Model么,上面这段代码会加载这个Model。定义完方法之后,我们对coredata的准备都已经完成了。最后强调一点,coredata并不是数据库,它只是一个框架,协助我们进行数据库操作,它并不关心我们把数据存到哪里。

  7. swift语言IOS8开发战记22 Core Data3

    上一话我们定义了与coredata有关的变量和方法,做足了准备工作,这一话我们来试试能不能成功。首先打开上一话中生成的Info类,在其中引用头文件的地方添加一个@objc,不然后面会报错,我也不知道为什么。

  8. swift实战小程序1天气预报

    在有一定swift基础的情况下,让我们来做一些小程序练练手,今天来试试做一个简单地天气预报。然后在btnpressed方法中依旧增加loadWeather方法.在loadWeather方法中加上信息的显示语句:运行一下看看效果,如图:虽然显示出来了,但是我们的text是可编辑状态的,在storyboard中勾选Editable,再次运行:大功告成,而且现在每次单击按钮,就会重新请求天气情况,大家也来试试吧。

  9. 【iOS学习01】swift ? and !  的学习

    如果不初始化就会报错。

  10. swift语言IOS8开发战记23 Core Data4

    接着我们需要把我们的Rest类变成一个被coredata管理的类,点开Rest类,作如下修改:关键字@NSManaged的作用是与实体中对应的属性通信,BinaryData对应的类型是NSData,CoreData没有布尔属性,只能用0和1来区分。进行如下操作,输入类名:建立好之后因为我们之前写的代码有些地方并不适用于coredata,所以编译器会报错,现在来一一解决。

返回
顶部