热搜:NVER node 开发 php

用Storyboard构建标签栏多页面应用程序UI_html/css_WEB-ITnose

2024-11-23 13:30:01
用Storyboard构建标签栏多页面应用程序UI_html/css_WEB-ITnose

主要内容

  • 标签栏多视图和导航栏多视图的区别
  • 用Storyboard构建标签栏多视图应用程序
  •  

    简述

    标签栏应用程序是一种多视图应用程序,它在屏幕底端显示一行按钮,称为标签栏(tab bar)。单机某个按钮就会激活一个新的视图控制器(标签页),并显示一个新视图,同时底部任然保留着标签栏。如下图所示的3个标签栏。


     

    另一种常见的多视图iPhone应用程序是基于导航的应用程序,这类应用程序拥有一个导航控制器,使用导航栏控制一系列分层的视图。导航控制器跟踪所在的视图深度,并且向你提供控制权,让你可以回到之前的视图。而标签栏用于从两个或更多选项中选择一个选项,而且只能选择一个(标签栏多是用于并列平行的页面间的选择)。

     

    参考:该简述主要参考《精通iOS开发》第六章:多视图应用程序

     

    Storyboard构建标签栏

    这里我们讲述一下用Storyboard构建标签栏多视图应用程序UI的方法。

    1选择Tab Bar Controller

    首先在Storyboard的对象选择中选择一个Tab Bar Controller:

    在Storyboard中我们可以看到如下图所示的UI界面,第一个页面(Tab Bar Controller)我们不需要对它进行操作,因为我们对它的标签页(后面两个页面)的操作会自动更新到Tab Bar Controller上面。

     

    2添加我们自己的TableView Controller

    从上图可以看到Tab Bar Controller拖入Storyboard中的时候就自带了两个标签页,其类型为View Controller,我们可以将其删除然后按照我们的需要添加我们自己的视图控制器。

    首先我们删除第一个自带的View Controller,然后从右边拖入一个TableView Controller;

    如上图所示,添加自己的TableView Controller之后,从Tab Bar Controller到TableViewController建立跳转(按住Control,从Tab Bar Controller向TableViewController拖线),从上图我们我们可以看到除了平常的push、modal、custom三种方式之外,多出了一个View Controllers,这里我们应该选择这种连接;

     

    3修改标签栏中的标签样式

    选中我们刚才添加的TableViewController中的标签图标(Tab Bar Item),

    在属性检查器中查看属性:

    这里我们可以修改上面标出的两个项。第一个是标签图标下面显示的文字,第二个是图标ICON。下面是我们修改后的效果:

    这时,我们查看Tab Bar Controller中的标签栏已经自动更新(这就是我们前面提到的不需要修改Tab BarController):

    同样,我们可以删掉其自带的另一个ViewController然后添加我们需要的TableViewController,然后重复我们刚才的操作:

     

    4添加一个新的Controller

    在前面我们拖入的Tab BarController只有两个View Controller,同时标签栏中也只有两个标签图标。这里我们添加一个新的视图控制器TableViewController

    这里我们可以看到,在未连接新添加的TableView Controller课Tab Bar Controller的时候,标签栏只有两个标签,同时新添加的TableView Controller中也没有标签栏。然后我们按照刚才的方法连接Tab Bar Controller,操作完全一致。

    可以看到当连接Tab Bar Controller和TableView Controller之后Tab Bar Controller中的标签栏标签数自动变成了3个。同样我们可以修改新添加的TableViewController中的标签样式。

    到此时一个有3个TableView标签页的标签栏多页面UI就做好了,后面的工作就是添加Controller和Model了,这里我们不做介绍。

    5运行

    为了看出标签页的切换,我们再每个页面中添加了Label,表面页面的切换:

     

    6参考

    具体的做法也可以参考这个视频,讲的比较详细:

    http://teamtreehouse.com/library/build-a-selfdestructing-message-iphone-app-2/designing-and-starting-the-app/a-storyboard-with-a-tab-bar-controller

     

    备注

    这里的标签栏多页面应用程序只是一个单独的标签栏显示,具体如何进入标签栏页,用什么方式进入,各有什么区别,我们尚未提及,后面《Tab Bar Controller与导航栏》一文中会详述。

     

    该Demo源代码可以再这里下载:

     

    Guo Liu

    于8/23/2014星期六第一次编辑