从Modal View设置NavigationController并在界面构建器中设置布局?

时间:2012-01-08 06:24:01

标签: iphone xcode uinavigationcontroller interface-builder modalviewcontroller

我正在尝试从模态视图设置NavigationController,但我无法弄清楚如何使用界面构建器设置布局选项。这是我正在使用的代码。

 //Create the view you want to present modally
 UIViewController *modalView = [[UIViewController alloc] init];
 //Create a new navigation stack and use it as the new RootViewController for it
 UINavigationController *nav = [[UINavigationController alloc]          
 initWithRootViewController:modalView];
 //Present the new navigation stack modally
 [self presentModalViewController:nav animated:YES];
 //Release
 [modalView release];
 [nav release];

是否还要在界面构建器中设置navigationcontroller的布局选项?我尝试使用

设置颜色
nav.navigationBar.tintColor = [UIColor colorWithRed:128 green:0 blue:0 alpha:1];

但是这会产生鲜红色,而不是这种RGB组合应该产生的栗色。

如果我可以从界面构建器控制NavigationController选项对我来说会更容易,这是否可以实现此设置?

2 个答案:

答案 0 :(得分:0)

您无法使用界面构建器更改色调颜色。您将不得不对其进行硬编码,就像您在问题中隐含的一样。

您有两种选择。

  1. 使用不同值alpha的RGB值来获取Maroon,然后使用它。
  2. 创建栗色背景(using paint or photoshop),并将其设置为background view.

答案 1 :(得分:0)

由于您是以编程方式创建这些视图,因此无法在界面构建器中设置任何内容。但是,您可以以编程方式设置色调颜色。您的问题是UIColor初始化程序在1.0f和0.0f之间采用浮点数作为颜色强度。你的128被简单地夹到1.0f,因此是鲜红色。试试这个:

nav.navigationBar.tintColor = [UIColor colorWithRed:0.5f blue:0 green:0 alpha:1.0f];

这应该给你一个更接近你正在寻找的颜色。