文档章节

storyboard tabbar

z
 zwl1989
发布于 2016/04/28 13:54
字数 504
阅读 3
收藏 0

什么是tabbar? 先几张图:

    

 

上图中蓝色框起来的部分就是tabbar, 它有如下几个特征:

 

1 tabbar它通常位于屏幕的最下方,不是必然,但大部分情况是这样。

 

2 tab bar的每个选项卡通常表示不同的功能,这也是它与segmentedcontrol最重要的区别, 后者强调的是同一功能不同类别的区分,前者则是不同功能的区分。拿开头两个图作为例子,看看他们上面红色框起来的部分,叫segmentedcontrol。

 

3 因为2的原因,tab bar的不同选项卡通常对应不同的视图。

 

4 tab bar的每个选项卡一般都有图标,有些是图标+文字(比如最上面两个图),一般不会只有文字。这个也是和segmentedcontrol的一个区别。

 

我今天写的这个demo,为了涉及面比较广一些,我会分别用一个系统的图标,两个自定义的图标(一个带文字和图片,一个只有文字), 来设置不同的tabbar item。最终效果如下:

       

 

 

开发环境

mac os + xcode5.0 + ios7模拟器

 

tab bar上的图标大小大一般是30*30,tab bar的整体高度是49。如果需要自定义图标,请参考这个大小比例。

 

新建一个single View的工程, 然后拖一个tabbar controller到storyboard。你会发现这个tabbar controller还同时带着两个viewController过来,并自动关连到item。 这个”擅自做主”的行为并不会引起我们的反感,因为我们几乎总是需要这样做。

 

为了便于区分, 我们设置两个view的背景色,最终如下图所示(初始的那个viewcontroller已经被我删除):

 

 

然后我们再增加一个item。

拖一个viewcontroller过来,设置一下背景色。然后按住conrol键,从tabbar controller拖到这个viewcontroller, 选择最下面的”relationship”,如下图所示:


 

然后最终的storyboard如下图所示:

本文转载自:http://blog.csdn.net/zwl492454828/article/details/49867155

共有 人打赏支持
z
粉丝 1
博文 53
码字总数 0
作品 0
西安
私信 提问
你所不知道的UITabBarButton?

项目源码请查看我的GitHub项目地址: 阐述: 只要有一定开发经验的iOS攻城狮,只要你做过应用程序APP的开发,不可避免的都会用到UITabBarController, UITabBarController又称标签控制器 ,同样是管...

DXSmile_大熊
2016/02/19
18
0
Storyboard教程-创建Tab Bar控制器和Web视图

Tab Bar控制器和UIWebView 首先,和通常一样,我们简单介绍一下Tab Bar控制器和UIWebView。你可能不属性Tab Bar 这个术语,但是在多数iPhone Apps中经常遇到。看看下面的范例应用程序,它们都...

三只脚的猪
2014/02/19
0
0
谈谈iOS 5和Storyboard的应用本地化

在使用Nib和Xib文件,也就是Interface Builder的iOS 4.x SDK中我们通过NSLocalizedString和Nib文件来本地化字符串。其中还涉及字符串文件的编写,十分麻烦。 在iOS 5和Xcode 4.2我们也可以这...

孔俊
2013/06/19
0
4
xcode4.5 如何在一个Navigation Controller的工程中添加一个Tab Bar?

我已经基于xcode给出的工程模板(Master-Detail Application)写了一个程序。 但是现在想在程序中添加一个Tab Bar Controller在Navigation Controller之前。直接在StoryBoard中拖入TabBarContr...

Hanarain
2012/10/21
1K
0
优雅快速的搭建iOS工程框架搭建的探讨

一个简洁优雅的iOS工程目录,能够帮助团队提升开发效率,同时也令自己进行心情愉悦的编码;反之,杂乱无章的目录则会使人心情烦躁,降低团队开发效率。 不知你是否也有同感?欢迎你在评论区写...

XcqRomance
2017/12/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java单例模式学习记录

在项目开发中经常能遇见的设计模式就是单例模式了,而实现的方式最常见的有两种:饿汉和饱汉(懒汉)。由于日常接触较多而研究的不够深入,导致面试的时候被询问到后有点没底,这里记录一下学习...

JerryLin123
昨天
3
0
VSCODE 无法调试

VSCODE 无法调试 可以运行 可能的原因: GCC 的参数忘了加 -g

shzwork
昨天
4
0
理解去中心化 稳定币 DAI

随着摩根大通推出JPM Coin 稳定币,可以预见稳定币将成为区块链落地的一大助推器。 坦白来讲,对于一个程序员的我来讲(不懂一点专业经济和金融),理解DAI的机制,真的有一点复杂。耐心看完...

Tiny熊
昨天
4
0
5.线程实现

用于线程实现的Python模块 Python线程有时称为轻量级进程,因为线程比进程占用的内存少得多。 线程允许一次执行多个任务。 在Python中,以下两个模块在一个程序中实现线程 - _thread 模块 th...

Eappo_Geng
昨天
6
0
ServiceLoader

创建一个接口文件在resources资源目录下创建META-INF/services文件夹在services文件夹中创建文件,以接口全名命名创建接口实现类 内容me.zzp.ar.d.PostgreSQLDialectme.zzp.ar.d.Hype...

Cobbage
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部