自定义custom Tab Bar

iOS提供的Tab Bar比较简单,我们常常有些别样的需求,此时往往需要自行自定义Tab Bar,如下图所示:
                          

如图所示,需要在某个页面中添加一个类似于Tab Bar的控件,该页面其他内容都是可以滚动的,但是“Tab Bar”只能在底部显示。

第一个映入脑中的想法是用UITableViewController实现该页面,然后在tableview上再蒙上一层想办法让它永远处于底部位置;理论上是可以实现的,在tableview的滚动监听事件里处理就可以进行相关处理;但是这样处理未免太麻烦了,况且还要考虑tableview的上拉刷新、下拉刷新等问题,会使得这种解决办法有很大的麻烦。

总之,如果Tab Bar成为了tableview的subview,则如果不加以处理,它会随着tableview滚动而滚动;所以,比较靠谱的做法是让Tab Bar和tableview保持独立;如果它们之间是兄弟关系,则tableview的滚动就不会影响到Tab Bar。所以比较靠谱的做法是用UIViewController完成本页面的设计,然后在其所对应的view上添加两个子view:tableview和实现自定义Tab Bar的view。

理清了这层关系,代码实现就非常容易了。

时间: 2024-07-29 04:23:21

自定义custom Tab Bar的相关文章

iOS 在TabViewController中设置Tab Bar,且实现自定义

开发环境:Xcode 6.1 iOS 7.1.2 & iOS 8.1 实现功能一,在打开APP时即显示第三个Tab对应的View: 实现功能二,给每一个Tab设置图片和选中图片. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after applica

自定义tab bar控件 学习资料

http://blog.csdn.net/zoeice/article/details/8068671 import java.util.Vector; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.NinePatch; imp

iOS开发:使用Tab Bar切换视图

iOS开发:使用Tab Bar切换视图 上一篇文章提到了多视图程序中各个视图之间的切换,用的Tool Bar,说白了还是根据触发事件使用代码改变Root View Controller中的Content View.这次,我们还是讲一讲切换视图,不过这次使用的是Tab Bar. 这次要写的程序运行起来的效果是这样的:底部有几个图标,每个图标对应一个视图.每点击一个图标,对应的视图就会打开.如下图,就是我们做好的程序效果:    每个Tab Bar有一个对应颜色的视图. 为了搞清使用Tab Bar切

《iOS Human Interface Guidelines》——Tab Bar

标签栏 标签栏让人们可以在一个app不同的子任务.视图或模式之间切换. API NOTE 标签栏包含在标签栏控制器(管理一系列自定义视图的显示)内.查看Tab Bar Controllers和UITabBar来学习更多关于在你的代码中定义标签栏的内容. 一个标签栏: 是半透明的 总是出现在屏幕的底部边缘 在垂直紧凑环境下一次最多显示五个标签(如果有更多的标签,标签栏会显示其中四个,并添加一个"更多"标签,来在一个列表中显示其余的标签) 在所有方向保持同样的高度 可以在标签上显示一个标记

iOS UIKit:Tab Bar Controller

1 结构剖析 IOS中的标签导航其实是一个UITabBarController对象,其也是一个Container View Controller.UITabBarController对象创建和管理了一组content View Controller,以及一个UITabBar对象(标签栏).每个content View Controller都被占用一个tab(标签项),当用户点击其中一个tab时,Tab Bar Controller就选择那个tab并显示其相关content view contro

学习笔记:Tab Bar 控件使用详解

注意这里是:Tab Bar 不是Tab Bar Controller. Tab bar是继承UIView,所以可以添加到ViewController里.是View就可以add到另一个View上去.Tab Bar Controller是新建View视图. XX.h 里需要定义UITabBar,并且要引用协议 UITabBarDelegate. @interface LoginViewController :UIViewController<UITabBarDelegate> { UITabBar

iOS第八课——Navigation Controller和Tab bar Controller

今天我们要学习Navigation Controller和Tab bar Controller. Navigation Controller是iOS编程中比较常用的一种容器,用来管理多个视图控制器. UINavigationController由Navigation bar ,Navigation View ,Navigation toobar等组成. sicnu_ios_2_os x_swift_3.pdf

Android 自定义ActionBar.Tab对象的表现

 最近想修改ActionBar.Tab对象的文本字体和颜色 发现该对象提供的接口非常有限 而网上搜索关于ActionBar.Tab结果大多比较早 使用的也不是google提供的例子中的ActionBar 于是自己研究了一天 找到了使用接口setCustomView来自定义ActionBar.Tab对象 先通过ActionBar.getTabAt(int) 获得一个ActionBar.Tab对象 然后调用setCustomView 使用自定义的layout 注意这里没有生产layout的对象 

Tab Bar Controller 的二级页面

今天学习了一下 tab bar controller,基本就是首页4个标签,然后有个设置页面. 首先拖入tab bar controller它会自带2个标签页,想加一个怎么办,拖入一个view controller然后从tab bar controller 拖根线连接过来即可. 然后,然后想从这个标签页上点击按钮跳转到设置页面,使用push的方式,加了个nav controller跳过去,然后发现下面带着标签页,可是我是二级页面不需要这个标签页啊,怎么去掉?