`
icrwen
  • 浏览: 269616 次
  • 性别: Icon_minigender_2
  • 来自: 济南
社区版块
存档分类
最新评论

iphone下的导航视图

 
阅读更多

UINavigationController的特点:

1)采用栈的形式来存放多个视图

2)当需要视图跳转是,多个视图按一定次序入栈,位于栈顶的视图显示出来。

3)当需要从当前视图返回前一视图是,可将栈顶的视图弹出,接着显示器下面的视图。

4)如此操作下去,直至返回到navigationController中的根视图为止。

使用技巧

1)在一个程序的人口类中,需要声明一个UINavigationController的属性,以便使用。

2)在这个navigationController属性在初始化时,可以指定其根视图。

3)如需视图跳转,将需要显示的ViewController通过其navigationController属性的pushViewController方法将其压入栈中

4)弹出视图时,可以通过popViewControllerAnimated方法将栈顶视图弹出。

注意事项:

1)每个ViewController都继承与UIViewController,故其自身都拥有一个navigationController属性和tabBarController属性。

2)当某个UIViewController位于某个tabBar

 

 

 

当表视图需要一个表视图单元的数据时调用,一般用cellForRowAtIndex参数作为数据来源的索引,直接作为数组下标即可。如果用全局变量作为数据索引,就有两个问题。

  1.全局变量需要与实际的数据在数组中的位置同步,需要添加全局变量增加或减小的代码。

  2.在重新绘制表格的时候需要把全局变量清零,就是当全局变量等于数组元素个数的时候。例如在拨号程序中,原数组中并不是每个元素的数据都是可用的表格单元数据,需要判断布尔属性,控制全局索引自增。在函数开头,添加判断全局变量是否等于数组元素个数的代码,将全局变量清零,否则在上下拖动表格时会出现数组下标越界的错误。

 

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

UINavigationController应用程序框架:

1)创建应用程序为窗口框架

2)设置窗口子视图为导航控制器

       #import<UIKit/UIKit.h>

      @interface  NavAppdelegate:NSObject<Appdelegate>{

      UIWindow * window;

                 UINavigationController * navController;

       }

       @property (nonatomic,retain)IBOutlet  UIWindow*window;

       @property (nonatomic,retian)IBOutlet  UINavigationController * navController;

        @end;

  在appdelegate.m中把navController添加为window的子视图

  在mainWindow.nib中添加一个Navigation Controller对象,并且从AppDelegate按住control键连接到   Navigaion Controller对象,连接到Appdelegate的输出口navController;

  3)创建根视图控制器

     创建根视图控制器类,注意是派生在UITableViewController的。

    在mainWindow.nib下,列表模式下展开Navigation Controller对象,然后选择其子对象View Conroller,

   苹果键+4打开身份识别设置Identify,设置class为根视图控制器

4)在根视图控制器中添加一个数组用来存放所有需要入栈的视图,注意最后一个入栈的视图是展现在最上面的。

5)定义其他需要导航的子视图

6)在根视图的数据源方法tableView:cellForRowAtIndex,获取出列单元,如果不存在就创建一个恶

7)在根视图的数据委托方法didSelectRowAtIndexPath:中把要入栈的最后那个视图压人栈

       [self.navController pushViewController:nextController animatied:YES];

 

 

 

 

 

分享到:
评论

相关推荐

    iPhone多视图切换

    在iOS开发中,多视图切换是构建用户界面的关键部分,尤其在iPhone应用设计中,它使得用户能够方便地在不同的功能或数据集之间导航。本教程将专注于使用Objective-C或Swift实现iPhone上的多视图切换,特别是通过窗口...

    iphone视图切换的控制

    本教程将深入探讨如何在iPhone应用中实现视图之间的平滑切换,主要关注`Push`操作,这是一种常见的视图控制器导航方式。 在iOS开发中,我们通常使用`UINavigationController`来管理一系列`UIViewController`实例的...

    iPhone 开发多视图切换 代码

    在iOS开发中,多视图切换是构建用户界面的关键部分,尤其对于iPhone应用程序而言,它提供了丰富的用户体验。本文将深入探讨如何在iPhone应用中实现多视图切换,并提供相关的代码示例。 首先,理解基本的视图(View...

    导航视图管理

    导航视图管理 UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:[[MyViewController alloc] init]]; [window addSubview:nav.view];

    iphone 各种视图切换效果

    在iOS开发中,iPhone应用程序的用户体验往往离不开各种视图(View)之间的切换效果。这些效果不仅提升了用户界面的美观度,还能提供更好的交互体验。本文将深入探讨“iPhone各种视图切换效果”,并结合源码分析,...

    iPhone之简易导航栏

    每个控制器代表一个屏幕或视图,导航栏会随着用户在这些屏幕之间导航而更新。 2. **导航栏的基本结构**:导航栏通常包含一个标题(显示当前屏幕的名称)、左侧的返回按钮(如果存在父级控制器)和可选的右侧按钮。...

    《Iphone开发基础教程》第九章 导航控制器和表视图

    本章节——“《Iphone开发基础教程》第九章:导航控制器和表视图”着重讲解了两个核心的UI元素:导航控制器(UINavigationController)和表视图(UITableView)。这两者在许多iOS应用中都扮演着至关重要的角色。 ...

    IOS iphone UINavigation 导航 简单例子

    在iOS应用开发中,`UINavigationController` 是一个至关重要的组件,它为我们提供了强大的导航功能,让用户可以在多个视图控制器之间自由地前进和后退。标题“IOS iPhone UINavigation 导航简单例子”所指的就是如何...

    iphone视图控制器例子

    在iOS开发中,`iPhone视图控制器`是构建应用程序用户界面的核心组件,它负责管理屏幕上的内容和交互。本教程适合初学者,旨在通过实例帮助理解视图控制器的工作原理及其重要性。 首先,我们需要了解`...

    iPhone 导航栏相关应用

    导航栏和tableView的多级视图,可保存下个视图的内容

    iPhone开发【十】多视图技术总结之二:Navigation

    Navigation,即导航控制器,是苹果提供的一个强大工具,用于管理多个视图控制器并提供一个统一的导航体验。本篇将深入探讨Navigation的实现机制及其在iPhone开发中的应用。 首先,Navigation Controller是...

    iOS iphone工具栏创建简单的多视图

    在本例中,我们将使用工具栏(UIToolbar)作为导航元素,它允许用户通过点击不同的按钮在多个视图之间切换。工具栏是一种底部显示的UI元素,可以包含各种自定义的按钮或者系统预设的UIBarButtonItem。 1. **创建...

    flex air 类似iphone的导航条

    在Flex Air开发中,创建一个类似iPhone的导航条可以为应用程序提供更加直观和用户友好的界面体验。这个项目可能是从网络上获取的源代码,并经过了个人的调整和优化,以适应特定的需求或改进功能。Flex Air是Adobe的...

    IOS 导航栏抽屉按钮视图

    - **适配不同设备**:确保抽屉视图在iPhone和iPad上都有良好的表现,可能需要针对不同屏幕尺寸调整约束和动画参数。 - **交互性**:当抽屉视图打开时,可能需要阻止用户与背景视图的交互,提供更好的用户体验。 - **...

    iPhone手机面板导航菜单

    1. **Home键**:在iPhone的传统设计中,Home键是核心的导航元素,用户可以按下它返回主屏幕,快速退出任何应用。在无Home键的iPhone如iPhone X及以后的型号中,这一功能通过从屏幕底部向上滑动实现。 2. **返回键**...

    轻松学iPhone开发之网页视图和滚动视图PPT学习教案.pptx

    在实际应用中,网页视图还提供了导航功能: - **goBack**:返回上一页面。 - **goForward**:前进到下一页面。 - **reload**:重新加载当前页面。 - **stopLoading**:取消当前的加载操作。 同时,开发者还可以...

    iPhone开发【八】多视图技术总结之一:ModalView(模态视图)

    - 模态视图的使用应适度,过度依赖模态视图可能会破坏应用的导航流程。 通过以上内容,我们可以了解到模态视图在iOS应用开发中的重要性和使用方式。在实际项目中,正确地运用模态视图可以提高用户体验,使得信息...

    iPhone开发【十二】多视图技术总结之四:Segmented Control

    在实际项目中,我们还可以结合Storyboard Segues或者 unwind segues 来简化视图间的导航逻辑。当用户点击Segmented Control时,触发 segue 直接跳转到相应的视图,这大大降低了代码的复杂性。 总之,Segmented ...

Global site tag (gtag.js) - Google Analytics