UINavigationController iPhone导航控制器/导航栏 是在iPhone程序中广为使用的用户数据互动方式。
这是一个简单的导航栏截图,我们可以设置其内置UIView的title,而导航栏会显示出这个title。而不是设置导航栏的title。我们也可以设置其左侧,或者右侧的按钮或者自定义视图对象。我们下面来一步一步的看看导航栏的使用:
创建并使用一个UINavigationController
UINavigationController *aNav = [[UINavigationController alloc] init];
然后添加一个视图进去,否则导航栏也没有意义的
UIViewController *aView = [[UIView alloc] initWithNibName: (*xib文件名*)];
[aNav pushViewController:aView animated:NO];
//导航栏的第一个视图不要动画化
设置导航栏的左右按钮:
我说过,设置导航栏的按钮并不是去设置导航栏本身,而是当时被导航的视图控制器,比如我们对aView作设置。
设置其标题:
aView.title = @"标题";
UIBarButtonItem *callModalViewButton = [[UIBarButtonItem alloc]
initWithTitle:@"Button"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(callModalList)];
self.navigationItem.leftBarButtonItem = callModalViewButton;
[callModalViewButton release]; //由于本地视图会retain它,所以我们可以release了
可以看到,还是很简单的嘛。
其他常用方法和属性:
本地视图.navigationItem.leftBarButtonItem //左边栏项目
本地视图.navigationItem.rightBarButtonItem //右边栏项目
本地视图.navigationItem.backBarButtonItem //后退栏项目
本地视图.navigationItem.hidesBackButton //隐藏后退按钮(YES or NO)
Navigation Controller 是最重要的iPhone组建之一了,以下是一些“关键方法”
pushViewController:viewController animated:BOOL
(加载视图控制器)
– 添加指定的视图控制器并予以显示,后接:是否动画显示
popViewControllerAnimated:BOOL
(弹出当前视图控制器)
– 弹出并向左显示前一个视图
popToViewController:viewController animated:BOOL
(弹出到指定视图控制器)
– 回到指定视图控制器, 也就是不只弹出一个
popToRootViewControllerAnimated:BOOL
(弹出到根视图控制器)
– 比如说你有一个“Home”键,也许就会实施这个方法了。
setNavigationBarHidden:BOOL animated:BOOL
(设置导航栏是否显示)
– 如果你想隐藏导航栏,这就是地方了。参照Picasa的WebApp样式
Navigation Controller 模式弹出新的Navigation Controller
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:addViewController];
[self.navigationController presentModalViewController:navController animated:YES];
或: SubView *printView=[[EIPrintPreprint alloc] initWithNibName:@"SubView" bundle:nil]; [self presentModalViewController:printView animated:YES]; [printView release];
实现pushViewController:animated:的不同页面转换特效
1. 首先要明确的是,不使用pushViewController的默认动画,所以在调用这个函数时,要将animated设置为NO.
2. 使用普通的来CATransition实现转换效果,代码如下:
CATransition *animation = [CATransition animation];
[animation setDuration:0.3];
[animation setType: kCATransitionMoveIn];
[animation setSubtype: kCATransitionFromTop];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionDefault]];
[self.navigationController pushViewController:m_poseAddIssueViewController animated:NO];
[self.navigationController.view.layer addAnimation:animation forKey:nil];
分享到:
相关推荐
在iOS应用开发中,UINavigation是苹果iOS SDK中的一个核心组件,主要用于实现导航控制器(UINavigationController)的功能,它提供了一种在多个视图之间进行层级导航的方法。自定义UINavigation通常是为了实现更个性...
5. **自定义过渡动画**:如果希望在页面切换时有特殊的导航栏动画,可以实现 `UINavigationControllerDelegate` 的方法,比如 `navigationController:animationControllerForOperation:fromViewController:...
本文将深入探讨如何使用CATransition实现uinavigation的跳转方法,并通过实例讲解如何创建一个名为"testpushPage"的页面推入动画。 首先,理解CATransition的基本概念。它是CAAnimation的子类,主要负责在CALayer...
在这个项目"pan手势 pop效果 UINavigation"中,我们关注的是如何通过Pan手势来实现类似网易新闻app中的右滑pop视图的功能。 Pan手势(UIPanGestureRecognizer)是iOS中的一个手势识别器,允许用户通过在屏幕上滑动...
iphone开发基础UITabBar和UINavigation搭建简单应用,适合初学者,学习tabbar和navigation,这里练习两者组合搭建一个简单的常见应用例子, 其实普通应用也就是tabbar作为根视图,每个tab又是一个navigation的根...
本文将详细介绍如何在iOS应用中组合使用 `UITabBar` 和 `UINavigation`。 首先,我们需要了解 `UITabBar` 的基本概念。`UITabBar` 是 iOS 系统提供的底部导航栏,通常包含多个图标或文字标签,用户点击不同的图标...
标题“IOS iPhone UINavigation 导航简单例子”所指的就是如何在iPhone应用中使用`UINavigationController`来实现这种常见的导航模式。`UINavigation`是iOS SDK中的核心导航服务,它允许用户通过点击屏幕顶部的标题...
标题中的"pan UINavigation"指的是我们希望对UINavigationController的默认行为进行扩展,使其支持手势滑动返回。这种功能在现代移动应用中非常常见,用户可以通过在屏幕边缘向左滑动来返回上一级视图。这一特性不仅...
UINavigation-SXFixSpace 导航栏按钮位置偏移的解决方案,兼容iOS7〜iOS13,可自定义间距 添加支持cocoapods, pod "UINavigation-SXFixSpace", "~> 1.2.4
ios 导航控制器,细节展示按钮。导航控制器(UINavigationController)是iOS界面中重要的组成部分。一般来说导航控制器要结合TableView来使用。UINavigationController是构建分层应用的主要工具,他与...
在Swift编程中,UITableView和UINavigationController是两个非常关键的组件,它们构成了iOS应用中的许多界面。这篇文章将深入探讨这两个组件的使用以及它们如何协同工作。 首先,UITableView是iOS开发中最常用的...
自定义UINavigationBar。自定义导航条,包括颜色、图片以及上面的按钮。在iOS5.0以上版本,要想navigation bar上面也能显示木质图片,要更改“WoodUINavigationAppDelegate.m”文件的一段代码:...
来源:Licence:MIT平台:iOS设备:iPhone / iPad作者:Peter Boctor 自定义UINavigationBar。自定义导航条,包括颜色、图片以及上面的按钮。 小编注:在iOS5.0以上版本,要想navigation bar上面也能显示木质...
UINavigation中的按钮其实就以前学过的UIBarButtonItem中的按钮,系统自带大概右20种左右,当然你也可以自己定义 1、首先在程序入口界面AppDelegate中添加导航栏控制器,并且创建根视图控制器RootViewController 2...
适用于UINavigation的Push和Pop动作 一行代码即可设置动画。 GitHub地址:https://github.com/mengxianliang/XLBubbleTransition
在iOS应用开发中,自定义`UINavigation Bar Button Item`是一项常见的需求,特别是在追求个性化界面设计时。标题“返回按钮定制方法”所涉及的核心知识点是如何为导航栏或工具栏创建一个带有左箭头的Bar Button Item...
在实际开发过程中,为了保持代码的可维护性和复用性,通常会采用 MVC(Model-View-Controller)架构,将业务逻辑、数据模型和界面视图分离。对于自定义的导航栏组件,可能会封装成一个单独的类别或子类,方便在不同...
Polymorphism with Controllers, UINavigation, UITabBar.ass":这部分可能涉及面向对象编程的多态性,以及如何在UIViewController、UINavigationController和UITabBarController之间进行交互,这些都是iOS中常见的...
一行代码调用,实现左侧返回item,右侧一个、两个、三个、四个item ...所以借鉴了UINavigation-SXFixSpace里边的几个分类。 demo位置:https://github.com/zhaotao0617/ZTNavigationItem/tree/master
IOS开发常见问题及常用技巧 1.升级到iOS 8.0 SDK以后,创建的新项目会带有LaunchScreen.xib文件作为App的启动界面,此时若不作任何设置就把基于8.0 SDK的App运行在7.0等版本的设备上,可能会出现应用...2.设置UINavigation