任何想法?因为从主视图控制器我知道如何显示一个孩子,但从孩子我不知道该怎么做.解决方法 如果使用故事板,您可以创建自己的孩子替换segue,例如:
ReplaceSegue.h
@interface ReplaceSegue : UIStoryboardSegue@end
ReplaceSegue.m
@implementation ReplaceSegue- (voID)perform{ UIVIEwController *source = self.sourceVIEwController; UIVIEwController *destination = self.destinationVIEwController; UIVIEwController *container = source.parentVIEwController; [container addChildVIEwController:destination]; destination.vIEw.frame = source.vIEw.frame; [source willMovetoParentVIEwController:nil]; [container TransitionFromVIEwController:source toVIEwController:destination duration:0.5 options:UIVIEwAnimationoptionTransitionCrossdissolve animations:^{ } completion:^(BOol finished) { [source removeFromParentVIEwController]; [destination dIDMovetoParentVIEwController:container]; }];}@end
然后,您可以打开故事板,将容器视图放在容器视图控制器和子控制器上,将第一个子场景中的自定义段落放入第二个子场景.您将要为两个子场景之间的自定义区段指定ReplaceSegue类:
请注意,如果您在第二个子视图上正确使用autolayout或自动调整大小,则所有内容都可以正常运行(尤其是在ReplaceSegue中手动设置目标控制器视图的框架).但是在Interface Builder中,第二个孩子场景的布局看起来并不正确,可以使场景的正确设计有点尴尬,因为(至少Xcode 4.5)第二个孩子的“模拟度量”场景做得不好,推测出适当的大小.所以你应该将第二个孩子场景的模拟度量尺寸从“推断”改为“自由”,然后手动调整第二个子场景的大小:
它不是很优雅的Xcode体验,但它的作品.如果您正确使用自动布局或自动调整面具,则会非常优雅地处理较小的变体.
总结以上是内存溢出为你收集整理的ios – 更改子视图控制器全部内容,希望文章能够帮你解决ios – 更改子视图控制器所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)