2012.12.28
效果图:
[img]
[/img]
这次添加的导航条及上面的左右按钮,都是再代码中进行添加,并未使用xib文件进行界面设计。
一、新建一个Empty App工程:UINavigationControllerDemo
二、创建一个View Controller,命名为RootViewController:依次选择File——New——New File,默认勾上With XIB for user interface.
三、打开AppDelegate.h,向其中添加属性:
#import <UIKit/UIKit.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) UINavigationController *navController;
@end
四、在AppDelegate.m 文件的didFinishLaunchingWithOptions方法中创建添加navController,RootViewController视图。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
RootViewController *rootView = [[RootViewController alloc] init];
rootView.title = @"Root View";
self.navController = [[UINavigationController alloc] init];
[self.navController pushViewController:rootView animated:YES];
[self.window addSubview:self.navController.view];
[self.window makeKeyAndVisible];
return YES;
}
五、添加UIBarButtonItem
bar ButtonItem分左右UIBarButtonItem。我们把左右的都添加上去。
在RootViewController.m中添加代码如下:
- (void)viewDidLoad
{
[super viewDidLoad];
UIBarButtonItem *leftButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(selectLeftAction:)];
self.navigationItem.leftBarButtonItem = leftButton;
UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(selectRightAction:)];
self.navigationItem.rightBarButtonItem = rightButton;
六、响应UIBarButtonItem的事件的实现
我们在 action:@selector(selectLeftAction:);
action添加了selectLeftAction和selectRightAction
在RootViewController.m文件中添加代码实现:
-(void)selectLeftAction:(id)sender
{
UIAlertView *alter = [[UIAlertView alloc] initWithTitle:@"提示" message:@"你点击了导航栏左按钮" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alter show];
}
-(void)selectRightAction:(id)sender
{
UIAlertView *alter = [[UIAlertView alloc] initWithTitle:@"提示" message:@"你点击了导航栏右按钮" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[alter show];
}
这里重点介绍下
UIBarButtonItem *leftButton = [[UIBarButtonItemalloc]initWithBarButtonSystemItem:UIBarButtonSystemItemActiontarget:selfaction:@selector(selectLeftAction:)];
UIBarButtonSystemItemAction的风格,这是系统自带的按钮风格,看下图,你不用一个个试验,你也知道想用那个item,如下图:
[img]
[/img]
- 大小: 103.2 KB
- 大小: 13 KB
分享到:
相关推荐
当与`UINavigationController`结合使用时,`UISegmentedControl`可以成为页面切换的触发器。例如,每个段可以对应一个不同的视图控制器,用户点击不同的段时,我们可以根据选中的段索引来决定推入哪个视图控制器。 ...
本篇文章将深入探讨`UINavigationController`的使用方法,特别是与ToolBar的结合。 首先,`UINavigationController`的核心功能是实现页面间的跳转和返回。当用户点击导航栏上的按钮或者执行某些操作时,它可以将新...
UITabBarController和UINavigationController的整合使用DEMO,详情见:http://blog.csdn.net/hwe_xc/article/details/50588500
每个被添加到`UINavigationController`中的`UIViewController`都有一个`navigationItem`属性。这个属性是用来在父级的导航栏中表示当前的视图控制器。`navigationItem` 可以设置的内容包括: - `leftBarButtonItem...
在这个"UINavigationController demo"中,我们将探讨如何简单地使用`UINavigationController`以及如何在其上添加自定义导航按钮,包括图片按钮和switch按钮。 首先,要创建一个`UINavigationController`实例,通常...
在iOS应用开发中,`UINavigationController`是苹果提供的一个核心组件,它负责管理一系列的`UIViewController`对象,形成一个导航栈。这个栈的顶部视图控制器通常显示在屏幕上,而其他视图控制器则被压入栈中等待...
例如,一个常见的设计模式是将 `UITabBarController` 设置为应用的主视图,每个标签页内再嵌套一个 `UINavigationController`,这样每个标签页都可以拥有自己的独立导航堆栈。这样做可以提供良好的用户体验,因为...
本示例代码“UINavigationController Demo”将深入讲解如何在iOS应用中有效地使用`UINavigationController`,以及它与导航栏(`UINavigationBar`)的交互。 首先,`UINavigationController`是`UIViewController`的...
在iOS应用开发中,页面间的跳转是用户体验的重要组成部分,而`UINavigationController`是苹果提供的一个强大工具,用于管理屏幕间的导航。这个类提供了一种优雅的方式来组织和控制多个`UIViewController`实例,允许...
在这个名为 "TabBarAndNavigation" 的示例项目中,开发者可能已经创建了一个实际运行的 Demo,展示了如何在 `UITabBarController` 和 `UINavigationController` 结合使用的场景下,根据需求动态隐藏和显示 `tabBar`...
我们写iOS项目的时候,基本都是一个UINavigationController套一个UITabBarController的形式,就是上面一个导航栏,下面几个按钮的工具条的形式。我写了几个应用,发现如果每次都重新写的话完全就是浪费精力和时间,...
当`UITabBarController`与`UINavigationController`结合使用时,常常会在每个`TabBarItem`下嵌套一个`UINavigationController`,这样每个标签页都可以拥有自己的导航结构。例如,你可以在每个`TabBarItem`下面设置一...
1. **分段控制器(TabBarController)集成**:`UINavigationController`常与`UITabBarController`结合使用,为每个分段提供独立的导航结构。 2. **交互式Pop手势**:默认情况下,`UINavigationController`支持从左侧...
通过以上步骤,你已经学会了如何在iOS应用中使用UINavigationController添加UIBarButtonItem,以及如何在不同视图控制器之间进行导航。这只是一个基础教程,实际开发中,你可能需要处理更多复杂的情况,如自定义按钮...
UINavigationController也是一种常用的容器,跟前边学过的tabbar差不多,在这个容器中可以添加多个页面 UINavigationController最重要的属性就是navigationItem,他专门为UINavigationController服务 navigationItem...
在iOS开发中,UINavigationController是苹果提供的一种容器类视图控制器,它负责管理一个堆栈式的视图控制器序列。在iOS 7之前,用户通常通过导航栏上的返回按钮或者手势来实现页面间的切换。然而,随着iOS 7的发布...
在iOS开发中,导航栏(UINavigationController)是应用界面中不可或缺的部分,通常包含左右两侧的UIBarButtonItem,用于展示图标或文字按钮。在某些情况下,我们可能需要自定义这些按钮的大小,使其更适合应用的设计...
上传的demo关于UINavigationController中back按钮的重写方法, UINavigationController的back按妞本身是没有监听方法的,但是我们通过添加类目可以使back按钮具有监听的作用.让我们能在UINavigationController触发返回...
[[UIBarButtonItem alloc] initWithTitle与[[UIBarButtonItem alloc] initWithBarButtonSystemItem的区别 - http://blog.csdn.net/moon_prince2013/article/details/49068643 Objective-C中的SEL - ...