iOS 中一个tabBarController 切换到另一个tabBarController的实现方法

iOS 中主tab(含有5个视图) 切换到次级tab(含有另外五个视图) 的使用方法:

-(void)makeTabBarHidden:(BOOL)hide

{

if ( [self.rootTabBarController.view.subviews
count] < 2 ) {

return;

}

UIView *contentView;

if ( [[self.rootTabBarController.view.subviews
objectAtIndex:0]
isKindOfClass:[UITabBar
class]] ) {

contentView = [self.rootTabBarController.view.subviews
objectAtIndex:1];

}
else {

contentView = [self.rootTabBarController.view.subviews
objectAtIndex:0];

}

if (hide) {

contentView.frame =
self.rootTabBarController.view.bounds;

}

else {

contentView.frame =
CGRectMake(self.rootTabBarController.view.bounds.origin.x,

self.rootTabBarController.view.bounds.origin.y,

self.rootTabBarController.view.bounds.size.width,

self.rootTabBarController.view.bounds.size.height
- self.rootTabBarController.tabBar.frame.size.height);

}

self.rootTabBarController.tabBar.hidden
= hide;

}

时间: 2024-10-11 10:16:35

iOS 中一个tabBarController 切换到另一个tabBarController的实现方法的相关文章

iOS 中 #error宏 的使用的一个例子

头文件中如下定义宏: /** * @brief 默认空间名(必填项) */ #error 必填项 #define DEFAULT_BUCKET @"" /** * @brief 默认表单API功能密钥 (必填项) */ #error 必填项 #define DEFAULT_PASSCODE @"" 类的实现中使用: self.bucket = DEFAULT_BUCKET; self.passcode = DEFAULT_PASSCODE; 这样,如果没有初始化这两

深入了解iOS中的VC切换的传值方式

由于上次面试中有提到相关内容,所以这次我专门深入研究了iOS的几种方式: 首先把所有的传值方式都列出来,如果有遗漏,请指正 首先列出iOS中使用的传值方式: init 传值(即在创建VC的时候就对响应的参数进行设置) property 传值(即属性赋值) Router 传值(这个在OC中被使用,因为作者没有写Swift版本,所以先开个坑,估计我会填坑) Delegate 传值(通过协议和代理传值) 闭包(block)传值 (通过swift中的闭包,类似于OC中的block传值) Notifica

HTML中输入框自动切换到下一个

最近看了部关于乔布斯的电影,感觉里面的电影情节还是很棒的. 就是软件开发者一定要考虑到用户的感受,一定要能非常简单的使用起来. 最近感觉公司的一些平台还是存在很多不好使用的地方.比如输入IP的输入框. 现在的设计是需要用户输入点号. 我想能不能设计成类似于windows的那种输入的方式. 设计为四个输入框,其中点号已经添加进去了. 其中那一段脚本必须要放入body内,否则无法识别到这个函数 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Trans

Cocos2D-X学习笔记 3 从一个场景切换到还有一个场景

工厂方法一般写法 StartLayer * StartLayer::create() { StartLayer *sl = new StartLayer(); sl->init(); sl->autorelease(); return sl; } 也能够用CC的CCPlatformMacros.h文件中提供的宏 CREATE_FUNC 来替代上面一段代码 #define CREATE_FUNC(__TYPE__) \ static __TYPE__* create() \ { \ __TYPE

Vue中解决路由切换,页面不更新的实用方法

前言:vue-router的切换不同于传统的页面的切换.路由之间的切换,其实就是组件之间的切换,不是真正的页面切换.这也会导致一个问题,就是引用相同组件的时候,会导致该组件无法更新,也就是我们口中的页面无法更新的问题了. 一.问题呈现 在路由中进行切换结果 这时候会发现input标签的value值并没有随着路由的改变而改变.并没有更新 二.解决方案① 给<router-view :key="key"></router-view>增加一个不同:key值,这样vue

iOS狂暴之路---iOS中应用的数据存储方式解析

一.前言 前面一篇文章中已经介绍了iOS应用中的视图控制器知识点,而本文不会按照常理来介绍View的知识点,而是先介绍iOS中的数据存储知识点,因为关于View的知识点太多了,后面会连续详细介绍一下.这篇先来看一下iOS中的数据存储功能分析.每一个iOS应用和Android应用一样,都有其对应的沙盒存储自己的数据,但是iOS和Android有一个区别就在于没有SD卡的概念了,也就说在iOS中应用的数据只能保存到自己的沙盒中.这也可以看出来iOS为了应用的安全考虑. 在开发Android的时候都知

IOS中 init和initialize

IOS中 init和initialize 一.init和initialize 1.方法类型 1> init属于对象方法,-开头 2> initialize属于类方法,+开头 2.调用时刻 1> init:每个对象初始化的时候调用一次 2> initialize:每个类初始化的时候调用一次 (一个对象和一个类都只初始化一次) 3.例子:用NSString类创建了7个NSString对象 1> 调用了1次initialize方法: 2> 调用7次init方法 二.UIVie

IOS开发之页面切换

从一个ViewController切换到另一个ViewController有下面几种方法: (1)addsubview方法切换视图 self.view addSubview:(加载的新页面); 相应的 [self.view removeFromSuperview];移除添加的view (2)self.view insertSubview:(加载的新页面) atIndex:n; 对n的解释:页面都是层次叠加的,n表示加载到那一层上面 (3)presentModalViewController方法

用IOS做一个界面切换的效果(登录界面和注册界面和找回密码界面的切换)(用封装好的lable和textf创建界面)

创建一个类封装uitextfield和UIlabel (源代码.m文件) #import "TLView.h" @interface TLView () { UILabel *_desLabel;    //左边的lable UITextField *_textField;//右边的 } @end @implementation TLView //改写父类的初始化方法,处理相同的性能 - (id)initWithFrame:(CGRect)frame { self = [super i