【发布时间】:2014-09-13 05:42:15
【问题描述】:
我正在尝试按照View Controller Programming Guide for iOS 在我的应用程序中实现容器视图。目前我只是想加载一个初始的第一个视图,但是第一个控制器中包含的标签没有显示出来。最后希望能够通过分段控件来控制容器中显示哪个视图。
任何帮助将不胜感激。
我的故事板
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
【问题讨论】:
-
我对你的问题投了赞成票,因为你的代码 sn-p 对我有很大的帮助。非常感谢您在问题中包含您的代码。但我不知道代码所指的是哪一个带有副标题“视图控制器”的场景。起初我认为代码属于第二个“视图控制器”,但后来我在
.h文件中看到了(UISegmentedControl *)sender。我指的是子标签:“视图控制器”->“视图控制器”->[“第一个控制器”,“第二个控制器”]。 -
我正在尝试实现 UISegmentedControl 部分。
-
ViewController 指的是情节提要中显示的第一个。另一个你不需要,你可以删除它。
-
@KatedralPillon 我已经回答了你的问题 - stackoverflow.com/a/24929501/273173
标签: ios objective-c xcode uiviewcontroller uicontainerview