IOS在一个ViewController中添加ChildViewController的方法

发布时间:2016-12-8 19:58:53 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"IOS在一个ViewController中添加ChildViewController的方法",主要涉及到IOS在一个ViewController中添加ChildViewController的方法方面的内容,对于IOS在一个ViewController中添加ChildViewController的方法感兴趣的同学可以参考一下。

- (void)selectChildWithItem:(MenuItem *)item { // 1.取出之前的控制器 UINavigationController *nav = _childs[item.className]; if (nav == nil) { Class c = NSClassFromString(item.className); UIViewController *vc = [[c alloc] init]; vc.view.backgroundColor = kViewBg; nav = [[UINavigationController alloc] initWithRootViewController:vc]; if (item.modal) { nav.modalPresentationStyle = UIModalPresentationFormSheet; [self presentViewController:nav animated:YES completion:nil]; return; } nav.view.autoresizingMask = UIViewAutoresizingNone; [nav.view addGestureRecognizer:[[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(dragView:)]]; [self addChildViewController:nav]; [_childs setObject:nav forKey:item.className]; } // 2.如果一样,就返回 if (nav == _currentChild) return; // 3.移除旧的 [_currentChild.view removeFromSuperview]; // 4.添加新的 CGFloat x = CGRectGetMaxX(_dock.frame); CGFloat width = 768 - kDockComposeBtnWidthP; CGFloat height = _dock.frame.size.height; nav.view.frame = CGRectMake(x, 0, width, height); [self.view addSubview:nav.view]; _currentChild = nav; }

上一篇:android之ConnectivityManager简介,网络连接状态
下一篇:安卓开发36:layout对齐属性总结

相关文章

相关评论