作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了一个 NavigationBar 并将其添加到 UIViewController 中。但在init之后,引用变成nil。我是 iOS 和 OC 的新手,我不知道为什么。任何人都可以帮忙吗?谢谢。
代码摘要:
@interface ContainerViewController()
@property (nonatomic, retain) UINavigationBar *nav;
@property (nonatomic, retain) UINavigationItem *navItem;
@end
@implementation ContainerViewController
- (instancetype) initWithParams:(NSDictionary *)params {
self = [super init];
if (self) {//...}
return self;
}
- setNavTitle:(NSDictionary *) params {
NSString *title = params[@"title"];
/////////////////////////////////
// here goes wrong
// self.navItem == nil here, why?
/////////////////////////////////
self.navItem.title = title;
}
- (void) viewWillAppear:(Bool)animated {
[super viewWillAppear:NO];
static float navHeight = 64.0;
UIViewController *wvController = [WebView init here];
UINavigationBar *nav = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, CGRectGetWidth(self.view.bounds), navHeight)];
UINavigationItem *navItem = [[UINavigationItem alloc] initWithTitle:title];
nav.items = [NSArray arrayWithObjects: navItem, nil];
///////////////////////////////
// I saved the reference here
//////////////////////////////
[self setNav:nav];
[self setNavItem:navItem];
[self.view addSubview:nav];
[self addChildViewController:wvController];
wvController.view.bounds = CGRectMake(0, 0, CGRectGetWidth(self.view.bounds), CGRectGetHeight(self.view.bounds) - navHeight);
[self.view addSubview:wvController.view];
[wvController didMoveToParentViewController:self];
}
@end
最佳答案
这对你有用,请检查并执行 Tutorial point site is very easy to learn some important UI basics if you are working in Objective C
关于ios - 为什么 NavgationItem 引用消失了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49425212/
我创建了一个 NavigationBar 并将其添加到 UIViewController 中。但在init之后,引用变成nil。我是 iOS 和 OC 的新手,我不知道为什么。任何人都可以帮忙吗?谢谢
我是一名优秀的程序员,十分优秀!