Pri*_*yat 2 iphone cocoa-touch uikit
我想知道为什么我的UINavigationController不让我设置标题.它允许我改变navigationBar的色调,但我设置的标题和rightBarButtonItem被忽略.为什么?
这是我的代码:
taps = 0;
UIView*controllerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
controllerView.backgroundColor = [UIColor whiteColor];
controller = [[UIViewController alloc] init];
[controller setView:controllerView];
[controllerView release];
navController = [[UINavigationController alloc] initWithRootViewController:controller];
navController.navigationBar.barStyle = 1;
navController.navigationItem.title = @"Setup";
UIBarButtonItem*item = [[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonSystemItemDone target:self action:@selector(dismissSetup:)];
navController.navigationItem.rightBarButtonItem = item;
[item release];
[self presentModalViewController:navController animated:YES];
[mp stop];
Run Code Online (Sandbox Code Playgroud)
ps:我知道我没有发布我分配的一些东西,我以后再这样做!
Tho*_*son 16
set:self.title = @"This is my title";在viewController中
(或在您的情况下设置controller.title = @"this is my title";)
导航控制器更新导航栏的中间位置,如下所示:如果新的顶级视图控制器具有自定义标题视图,则导航栏将显示该视图以代替默认标题视图.要指定自定义标题视图,请设置视图控制器导航项的titleView属性.如果未设置自定义标题视图,导航栏将显示包含视图控制器默认标题的标签.此标签的字符串通常从视图控制器本身的title属性中获取.如果要显示与关联的标题不同的标题
视图控制器,改为设置视图控制器导航项的title属性.
您希望UINavigationController根据哪个viewcontroller当前位于顶部来更改其标题.因此,可以采用的方法是在要推入viewControllers数组的viewcontrollers中设置标题.
顺便说一下:我不认为导航控制器应该以模态方式呈现:
因为UINavigationController类继承自UIViewController类,所以导航控制器具有可通过view属性访问的自己的视图.部署导航界面时,必须将此视图安装为要创建的任何视图层次结构的根.例如,如果您要单独部署导航界面,则可以将此视图作为窗口的主要子视图.要在选项卡栏界面中安装导航界面,您可以将导航控制器的视图安装为相应选项卡的根视图.