我正在尝试关注 View Controller Programming Guide for iOS在我的应用程序中实现容器 View 。目前我只是想加载一个初始的第一个 View ,但是第一个 Controller 中包含的标签没有显示。最后希望能够通过分段控件来控制在容器中显示哪个view。
如有任何帮助,我们将不胜感激。
我的 Storyboard
ViewController.h
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIView *contentController;
- (IBAction)SegmentedControlValueChange:(UISegmentedControl *)sender;
@end
ViewController.m
#import "ViewController.h"
#import "FirstController.h"
#import "SecondController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
FirstController *firstController = [[FirstController alloc] init];
[self displayContentController:firstController];
}
- (IBAction)SegmentedControlValueChange:(UISegmentedControl *)sender
{
}
- (void)displayContentController: (UIViewController *)content
{
[self addChildViewController:content];
content.view.frame = [self frameForContentController];
[self.view addSubview:content.view];
[content didMoveToParentViewController:self];
}
- (CGRect)frameForContentController
{
return self.contentController.bounds;
}
@end
最佳答案
如果 FirstController
是 Storyboard 的一部分,那么您必须从 Storyboard 中加载它。
尝试做
FirstController *firstController = [self.storyboard instantiateViewControllerWithIdentifier:@"yourIdentifier"];
关于ios - 实现容器 View 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24886770/