更改以编程方式创建的导航栏上的autoresizingMask。
|
因此,我有一个基于视图的应用程序,其中我需要一个带有表格视图的页面,并且希望它上方的导航栏可以返回。我以编程方式添加了以下内容:
-(IBAction)switchToTableView; {
tableView *table = [[tableView alloc] initWithNibName:@\"tableView\" bundle:nil];
UINavigationController *navControl = [[UINavigationController alloc] initWithRootViewController: table];
table.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[table release];
[self presentModalViewController: navControl animated:YES];
[navControl release];
}
然后在tableview类的viewDidLoad中实现:
- (void)viewDidLoad
{
self.tableView.rowHeight = 70.f;
UIBarButtonItem *back = [[UIBarButtonItem alloc]
initWithTitle:@\"Back\"
style:UIBarButtonItemStyleDone
target:self
action:@selector(switchToHome)];
self.navigationItem.leftBarButtonItem = back;
UIBarButtonItem *map = [[UIBarButtonItem alloc]
initWithTitle:@\"Map\"
style:UIBarButtonItemStyleDone
target:self
action:@selector(switchBacktoFindArt)];
self.navigationItem.rightBarButtonItem = map;
[map release];
[super viewDidLoad];
}
添加所需的按钮。现在,所有这些都很好用,但是现在我正在浏览我的应用程序并允许更改方向,由于无法在IB中更改autoresizingMask,因此我遇到了麻烦。整个tableview页面的大小调整得很好,除了导航栏从上到下非常瘦。我希望它保持相同的高度。如何设置适当的蒙版,甚至访问IB之外的导航栏?
没有找到相关结果
已邀请:
1 个回复
撵穆
但是,如果您像这样使用UINavigationController的内部结构,则它可能真的变得不灵通。令我惊讶的是,导航栏的大小尚未调整到合适的高度,就像默认情况下那样。 (感觉您的代码中的其他地方可能有其他问题,但是我必须查看更多内容才能发现)。