IOS学习之基于IOS7的tab bar
转载请注明出处
http://blog.csdn.net/pony_maggie/article/details/28129473
作者:小马
什么是tabbar? 先几张图:
上图中蓝色框起来的部分就是tabbar, 它有例如以下几个特征:
1 它通常位于屏幕的最下方,不是必定,但大部分情况是这样。
2 tab bar的每一个选项卡通常表示不同的功能。这也是它与segmentedcontrol最重要的差别, 后者强调的是同一功能不同类别的区分,前者则是不同功能的区分。
拿开头两个图作为样例,看看他们上面红色框起来的部分,叫segmentedcontrol。
3 由于2的原因,tab bar的不同选项卡通常相应不同的视图。
4 tab bar的每一个选项卡一般都有图标,有些是图标+文字(比方最上面两个图),一般不会仅仅有文字。
这个也是和segmentedcontrol的一个差别。
我今天写的这个demo,为了涉及面比較广一些,我会分别用一个系统的图标,两个自己定义的图标(一个带文字和图片,一个仅仅有文字), 来设置不同的tabbar item。终于效果例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcG9ueV9tYWdnaWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcG9ueV9tYWdnaWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
开发环境
mac os + xcode5.0 + ios7模拟器
tab bar上的图标大小大通常是30*30,tab bar的总体高度是49。
假设须要自己定义图标,请參考这个大小比例。
新建一个single View的project, 然后拖一个tabbar controller到storyboard。你会发现这个tabbar controller还同一时候带着两个viewController过来,并自己主动关连到item。 这个”擅自做主”的行为并不会引起我们的反感,由于我们差点儿总是须要这样做。
为了便于区分, 我们设置两个view的背景色,终于例如以下图所看到的(初始的那个viewcontroller已经被我删除):
然后我们再添加一个item。
拖一个viewcontroller过来。设置一下背景色。
然后按住conrol键。从tabbar controller拖到这个viewcontroller, 选择最以下的”relationship”,例如以下图所看到的:
然后终于的storyboard例如以下图所看到的:
好了,编译执行,一切OK。有没有注意到我一行代码都没有写,是不是非常奇妙呢!
代码下载地址:
https://github.com/pony-maggie/TabBarControlDemo
或
http://download.csdn.net/detail/pony_maggie/7439409
IOS学习之基于IOS7的tab bar的更多相关文章
- uitabbarcontroller中 在设置tab bar item的image属性后不显示问题
开始使用ios中的UITabBarController,在给Tab Bar Item设置自定义图片的时候,遇到了问题 按照如下配置: 出来的结果确是: 实际上test24.png应该是: 纠结了很久, ...
- iOS第八课——Navigation Controller和Tab bar Controller
今天我们要学习Navigation Controller和Tab bar Controller. Navigation Controller是iOS编程中比较常用的一种容器,用来管理多个视图控制器. ...
- iOS开发中的错误整理,Changing the delegate of a tab bar managed by a tab bar controller is not allowed
iOS [错误:'Changing the delegate of a tab bar managed by a tab bar controller is not allowed.'] 错误:'Ch ...
- iOS开发:使用Tab Bar切换视图
iOS开发:使用Tab Bar切换视图 上一篇文章提到了多视图程序中各个视图之间的切换,用的Tool Bar,说白了还是根据触发事件使用代码改变Root View Controller中的Conten ...
- 自定义tab bar控件 学习资料
http://blog.csdn.net/zoeice/article/details/8068671 import java.util.Vector; import android.content. ...
- 学习笔记:Tab Bar 控件使用详解
注意这里是:Tab Bar 不是Tab Bar Controller. Tab bar是继承UIView,所以可以添加到ViewController里.是View就可以add到另一个View上去.Ta ...
- 【转】iOS学习之translucent属性
原文地址:http://www.jianshu.com/p/930643270455 总所周知,苹果从iOS7开始采用扁平化的界面风格,颠覆了果粉们"迷恋"的拟物化风格.对于开发者 ...
- iOS学习路线图
一.iOS学习路线图 二.iOS学习路线图--视频篇 阶 段 学完后目标 知识点 配套学习资源(笔记+源码+PPT) 密码 基础阶段 学习周期:24天 学习后目标: ...
- 从零开始学ios开发(十一):Tab Bars和Pickers
不好意思各位,本人休息了一个礼拜,所以这次的进度延后了,而且这次的学习的内容比较多,时间用的也比较长,文章发布的时间间隔有些长了,望各位谅解,下面继续我们的ios之旅. 这次我们主要学习的内容有2个, ...
随机推荐
- 20155225 实验二《Java面向对象程序设计》实验报告
20155225 实验二<Java面向对象程序设计>实验报告 一.单元测试 三种代码 知道了伪代码.产品代码.测试代码的关系和用途,并根据老师的例子,按测试代码调试了产品代码. 值得注意的 ...
- CF293B Distinct Paths题解
CF293B Distinct Paths 题意 给定一个\(n\times m\)的矩形色板,有kk种不同的颜料,有些格子已经填上了某种颜色,现在需要将其他格子也填上颜色,使得从左上角到右下角的任意 ...
- 在Ubuntu 16.04 安装python3.6 环境并设置为默认
在Ubuntu 16.04 安装python3.6 环境并设置为默认 1.添加python3.6安装包,并且安装 sudo apt-get install software-properties-co ...
- idea 设置svn忽略 .idea内的文件
从ToolView中打开 Version Control -> Local Changes 中的Default ChangesList里面的文件全选中右键选择 Move to Anothe ...
- Mac下思维导图Xmind使用入门
1.软件下载 中文官网地址: http://www.xmindchina.net   安装过程比较傻瓜化,这里就不截图了. 2.用Xmind设计软件模块: 1>.新建一个思维导图,如下图,选 ...
- JSP九大内置对象简介
1.out对象,是JspWriter类的实例,是向客户端输出内容常用的对象 方法: void println() 向客户端打印字符串 void clear() 清除缓冲区的内容,如果在flush之后调 ...
- CF687B Remainders Game
题意:已知n个数,第i个为ci,给定一个数x mod ci的结果,再给点一个k,问能不能知道x mod k的值? 分析:刚看题目的我一脸蒙蔽,对题意有点不理解,能的情况似乎有很多,我该从哪里下手呢 ...
- 历史文章分类汇总-Anaconda安装第三方包(whl文件)
本文主要是对公众号之前发布的文章进行分类整理,方面大家查阅,以后会不定期对文章汇总进行更新与发布. 一.推荐阅读: Anaconda安装第三方包(whl文件) 福布斯系列之数据分析思路篇 福布斯系 ...
- 世界杯:用Python分析热门夺冠球队-(附源代码)
2018年,火热的世界杯即将拉开序幕.在比赛开始之前,我们不妨用 Python 来对参赛队伍的实力情况进行分析,并大胆的预测下本届世界杯的夺冠热门球队. 通过数据分析,可以发现很多有趣的结果,比如: ...
- BZOJ 5059: 前鬼后鬼的守护 可并堆 左偏树 数学
https://www.lydsy.com/JudgeOnline/problem.php?id=5059 题意:将原序列{ai}改为一个递增序列{ai1}并且使得abs(ai-ai1)的和最小. 如 ...