addchildviewcontroller

iOS AddChildViewController遇到的问题 今天在项目中检查循环引用问题的时候遇到了此问题,查询了别的页面,发现打印log并不一样。所以查阅了资料,这里记录一下。 很多时候,我们都会遇到,在一个viewController中,添加别的controller,已达到特殊的转场效果,或者为了用户能在一个页面看到并和多个页面的内容交互的效果。 因此,苹果给我们提供了这个概念,和实现方法:addChildViewController 这里有一个使... 阅读详情

在iOS5中,ViewController中新添加了下面几个方法: 

addChildViewController:是UIViewController的一个方法,iOS5之后加入的,使用这个方法可以达到addsubView一样的效果,而且好处多多

addChildViewController的好处:

     1.无疑,对页面中的逻辑更加分明了。相应的View对应相应的ViewController。 
     2.当某个子View没有显示时,将不会被Load,减少了内存的使用。 
     3.当内存紧张时,没有Load的View将被首先释放,优化了程序的内存释放机制。
  • 1
  • 2
  • 3

使用addChildViewController的三个步骤

1.addChildViewController:的同时调用addSubView:

    [self addChildViewController:sfViewControllr];
    [self.view addSubview:sfViewControllr.view];
  • 1
  • 2

2.设置子视图的位置,并显示出来

    sfViewControllr.view.frame = CGRectMake(0, 300, 1, 1);
    [sfViewControllr didMoveToParentViewController:self];
  • 1
  • 2

3.移除子视图

    [sfViewControllr willMoveToParentViewController:nil];
    [sfViewControllr removeFromParentViewController];
    [sfViewControllr.view removeFromSuperview];
  • 1
  • 2
  • 3

可能遇到的问题: 
如果在子Controller中,把自己从父Controller中移除,在ios6中没问题,在iOS7中,会崩溃

[self willMoveToParentViewController:nil];
[self.view removeFromSuperview];
[self removeFromParentViewController]; //ios7中崩溃
  • 1
  • 2
  • 3

暂时的解决方法,在子Controller中发通知,通知父Controller,移除子Controller

带有下划线和动画效果的视图切换(addChildViewController) 了解addChildViewController用法,写了一个带有下划线效果的视图切换demxc9po,demo只是简单封装实现视图的切换。 立即下载

相关推荐

SoC低功耗设计实战:28nm工艺下四核A7的Hierarchical Flow全流程解析

本文深入解析了在TSMC 28nm工艺上,采用Hierarchical Flow(层次化流程)实现四核Cortex-A7 SoC低功耗设计的全流程。文章从项目背景切入,详细探讨了基于UPF的电源规划、时钟树综合、接口时序收敛以及物理验证等关键环节,分享了使用Cadence Innovus等工具进行低功耗物理实现的实战经验与挑战。

weixin_29231263的博客 324

iOS中addChildViewController的使用

A父视图控制器 addChildViewController:B子视图控制器]在视图控制器A中添加了子视图控制器B.调用这个方法时如果子视图控制器已经有父视图控制器了,那么调用该方法会先把子视图控制器从之前的父视图控制器中移除,然后再添加到当前的视图控制器上作为子视图控制器。当从一个视图控制容器中添加或者移除viewController后,该方法被调用;当一个视图控制器从视图控制器容器中被添加或者被删除之前,该方法被调用parent:父视图控制器,如果没有父视图控制器,将为nil;

lmyuanhang的专栏 748

DSP配置I2C通讯(非IO口软件模拟时序)

dsp即数字信号处理器,是一种广泛应用的嵌入式处理器,主要应用是实时快速地实现各种数字信号处理算法,目前,国际主要的dsp供应商是ti公司,其tms32系列产品占据了dsp市场近一半的份额,本文以TMS320F28377D为例,使用ti公司dsp开发工具ccs10.1配置i2c模块。 写这篇文章的缘由,因为市面上很多DSP其实内部是具有硬件I2C接口的,但由于网络上大部分资料和例程都是利用IO口模拟I2C时序进而实现I2C通讯的。给很多想学习硬件I2C通讯的小伙伴带来了困难。 下面先介绍一下配置步骤 1.E

weixin_44387442的博客 5546

iOS添加子控制器(addChildViewController)

iOS添加子控制器(addChildViewController)

weixin_46926959的博客 2071

Maven证书信任危机:PKIX path building failed的全面解析与实战修复

本文全面解析了Maven构建中常见的`PKIX path building failed`证书验证错误。该错误通常在使用特定镜像仓库或自建仓库时,因SSL/TLS证书不被JDK默认信任而触发。文章深入剖析了错误根源,对比了临时忽略检查与永久导入证书等不同修复方案的安全性与适用场景,并推荐通过`keytool`将证书导入JDK信任库的根治方法,以保障构建安全与稳定。

zzz56的博客 506

OBC_开环扫频波特图拟合操作流程(结合 Simulink)

摘要: 本文详细介绍了基于Simulink的开环扫频波特图测试与拟合流程,适用于电源/控制系统(如LLC/PFC)的小信号分析。主要内容包括:1)前期准备(测试点选择、信号范围设定);2)Simulink建模方法(信号注入、数据记录);3)两种扫频方式(逐频正弦/Chirp扫频)的实现;4)MATLAB数据处理(FFT分析、传递函数拟合);5)线性分析工具使用技巧。重点强调了激励信号幅值控制、稳态数据采集及模型验证方法,并提供完整MATLAB脚本示例。该流程可有效获取系统频域特性,为控制器设计提供可靠依据。

Sumerking的博客 234

UIViewController 中的 willMoveToParentViewController和didMoveToParentViewController的使用

关于这两个方法,也是IOS5之后才加上去的。 在iOS 5.0及以后,iOS为UIViewController类添加了新的属性和方法: @property(nonatomic,readonly) NSArray *childViewControllers - (void)addChildViewController:(UIViewController *)childController

岸边的脚印 1150

弱小目标检测跟踪算法研究(5) 基于顶帽变换(Top_hat)算法的红外弱小目标检测之背景抑制

基于顶帽变换(Top_hat)算法的红外弱小目标检测之背景抑制1. 前言2. 顶帽变换(Top_hat)算法3. Matlab仿真4. 小结 1. 前言 红外图像中的弱小目标,目标属性包涵“弱"和“小’’两个方面:“弱’’是指目标在红外波长上所表现出来的强度,具体反映到所拍摄的红外图像上,就是指目标的灰度值;而“小’’是指目标的尺寸大小,也就是前面所述的成像面积很小,反映到红外图像上就是指目标所占的像素数目很少。 SPIE国际光学工程学会(Societyof Photo一0ptical Instrument

sinat_34897952的博客 5293

笔记:iOS中addChildViewController的使用(转载)

A父视图控制器 addChildViewController:B子视图控制器]在视图控制器A中添加了子视图控制器B.调用这个方法时如果子视图控制器已经有父视图控制器了,那么调用该方法会先把子视图控制器从之前的父视图控制器中移除,然后再添加到当前的视图控制器上作为子视图控制器。parent:父视图控制器,如果没有父视图控制器,将为nil;在我们项目的APP首页的实现中使用到了,首页内容展示位推荐分类菜单,以及每个菜单下的内容展示,不同的分类下的内容view展示的UI多样化。

zcl369369的专栏 719

智能门禁:AI Agent的访客意图识别

随着人工智能技术的飞速发展,智能门禁系统已经成为现代安全管理的关键环节。本文深入探讨了AI Agent在访客意图识别中的应用,通过详细的分析和实例讲解,揭示了智能门禁系统的核心工作原理、算法实现及其在安全领域的重要作用。文章结构清晰,逻辑严谨,旨在为广大技术爱好者提供一次全面的技术盛宴。在当今社会,门禁系统已成为各类建筑和机构不可或缺的安全设施。随着信息安全意识的增强,传统门禁系统的局限性逐渐显现。例如,在访客管理方面,传统方法通常依赖于人工登记、身份验证等手段,不仅效率低下,而且容易出现漏洞。

AI架构师小马 711

YOLOv11 改进 - Mamba | 集成Mamba-YOLO(AAAI 2025),Mamba-YOLOv11-B 替换骨干,破解全局依赖建模难题,实现高效实时检测

本文介绍Mamba YOLO,为图片物体识别提供了“又快又准”的新方案。传统CNN架构运行快但难以捕捉远距离关联物体,Transformer架构精度高但计算量呈平方级增长,而SSM虽计算量为线性级且能抓全局关联,但用于图片识别时细节定位不准。为此,Mamba YOLO做了三项关键优化:引入ODMamba骨干网络,解决自注意力的二次复杂度问题,且无需预训练;设计ODMamba宏观结构确定最佳阶段比例和缩放大小;采用多分支结构的RG块建模通道维度,解决SSM在序列建模中的不足。在COCO数据集测试中,其小版本推

魔改工程师的博客 858

iOS开发之使用addChildViewController:给控制器添加子控制器

在iOS5中,ViewController中新添加了下面几个方法: addChildViewController:是UIViewController的一个方法,iOS5之后加入的,使用这个方法可以达到addsubView一样的效果,而且好处多多addChildViewController的好处: 1.无疑,对页面中的逻辑更加分明了。相应的View对应相应的ViewController。

chirs的专栏 2万+

第29章:PCL PrincipalCurvatures 曲率估计

PrincipalCurvatures(主曲率估计)是一种用于计算点云表面曲率的算法。曲率描述了曲面局部的弯曲程度,是表面几何特征的重要指标。在点云处理中,估计表面的曲率对于形状分析、物体识别、表面重建等任务非常重要。主曲率是曲面上某一点的最大和最小曲率方向。通过计算点云的主曲率,我们可以获得点云中每个点的局部形状特征。通常情况下,主曲率包括两个主要参数:最大主曲率(最大曲率方向上的曲率)和最小主曲率(最小曲率方向上的曲率)。优点缺点提供了对点云表面局部形状的深入分析。

yumeiguo的博客 213

addChildViewController方法

ios中UIViewController addChildViewController新方法的使用   在ios5中,ViewController中新添加了下面几个方法: addChildViewController:  removeFromParentViewController  transitionFromViewController:toViewController

在路上 1382

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

addChildViewController

在以前,一个UIViewController的View可能有很多小的子view。这些子view很多时候被盖在最后,我们在最外层ViewController的viewDidLoad方法中,用addSubview增加了大量的子view。这些子view大多数不会一直处于界面上,只是在某些情况下才会出现,例如登陆失败的提示view,上传附件成功的提示view,网络失败的提示view等。但是虽然这些view

u011623532的专栏 725

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

addChildViewController后 Childvc viewWillAppear 不调用的问题

addChildViewController viewWillAppear

allanGold 2140

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

addChildViewController: VS addSubview:

前言最近看大神们的博客时,发现一个之前一直没注意到的API:addChildViewController:很有用武之地,很大程度上弥补了经验不深的开发者(ps:说得好像不是我一样!)常使用的addSubview:的不足,而且Apple官方也希望我们在使用[self.view addSubview:XX]的同时调用[self addChildViewController:XX]。 addChildV

ZeroOnet的博客 1425

使用addChildViewController时出现的问题

ios5.0之后可以使用addChildViewController  self.inboxController=[[NoticeInboxViewController alloc] initWithNibName:@"NoticeInboxViewController" bundle:nil];     [self addChildViewController:self.inb

yesjava的专栏 7462

addchildviewcontroller管理视图

有些时候,在和其他工程整合时没办法得到当前的视图控制器进行操作,通过addchildcontroller将视图控制器收集起来统一管理是个很不错的办法。 比如最近有个工程,要和u3d进行整合,首页界面是u3d做的然后在xcode进行扩张,跳转到新的视图控制器必须能返回,当然一级跳转可以直接模态消失,但有二级跳转回首页就出现问题了。首页—登录—详情。详情的返回要回到首页而不是登录。所以首先想到的是通

孙元洋的专栏 2074

addChildViewController的正确姿势

原文地址::https://blog.youkuaiyun.com/chokshen/article/details/82314944 项目中经常出现一个控制器添加多个子控制器的情况,例如今日头条的标签切换视图,使用addChildViewController的正确姿势如下: 先添加第一个控制器,其余控制器暂时不用添加: //A控制器 let vc...

xqhrs232的专栏 1844

IOS addChildViewController方法使用及注意事项

官方文档:https://developer.apple.com/library/content/featuredarticles/ViewControllerPGforiPhoneOS/ImplementingaContainerViewController.html在iOS 5.0及以后,iOS为UIViewController类添加了新的属性和方法:123456@property(nonat...

allanGold 3783

笔记:iOS中addChildViewController的使用

iOS早在iOS5的时候为了解耦、更加清晰的处理页面View的逻辑,UIViewController提供了addChildViewController方法,将ViewController作为容器处理视图控制器的切换,将比较复杂的UI使用子ViewController来管理。 iOS5.0之前只能在ViewController的view中不断的通过addSubView添加subView到VC的view视图层级中。这样使得主ViewController中的内容越来越混乱,代码越来越多,subView的管理越来

2803

iOS addChildViewController方法

苹果新的API增加了addChildViewController方法,并且希望我们在使用addSubview时,同时调用[self addChildViewController:child]方法将sub view对应的viewController也加到当前ViewController的管理中。 对于那些当前暂时不需要显示的subview,只通过addChildViewControlle

有酒有故事 1279

使用addChildViewController手动控制UIViewController的切换

使用addChildViewController手动控制UIViewController的切换 addChildViewController If the new child view controller is already the child of a container view controller, it is removed from that conta

u013538732的专栏 638

addChildViewController与viewWillAppear、viewDidAppear关系说明

最近项目中使用addChildViewController时遇到了很诡异的问题,我们的用法如下,在ParentViewController的viewWillAppear中请求数据,请求数据成功之后使用如下代码添加子视图控制器:[self.view addSubview:childViewController.view]; [self addChildViewController:childView

心砚THU的专栏 1万+
上一篇: 根据label的内容返回自定义cell的高度
下一篇: 二级联动
nslog1234554321
博客等级 码龄11年 52粉丝 258原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值