用xib时怎么设置视图的导航控制器没有去加载xib

我已经更新了我的iPhone的iOS 4今天和我的应用程序为它和英寸XIB文件和设备上的所有视图移动起来,他们的上半部分是隐藏的导航栏。在我viewController我设置self.edgesForExtendedLayout = UIRectEdgeN而在iOS 7现在一切都看起来不错,但在我的项目与目标6.0和测试它在iOS 6设备的所有视图由导航栏隐藏我很高兴。使它们看起来一致的iOS 7和iOS 6我不现在要突破的iOS 6支持。
本文地址 :CodeGo.net/608906/
-------------------------------------------------------------------------------------------------------------------------
1. 因此,这里是我做的。这不是有史以来最干净的代码,你需要确保你没有得到奇怪的结果与你的滚动视图。
基本上我向下移动的所有子视图的导航栏(45)的高度。对于我scrollviews / tableviews,这在我的应用程序总是去屏幕的底部,我减少他们的身高45,这样你仍然可以到达终点。这是应用程序的解决方案,但你应该确保你所有的滚动和tableviews的拟收缩这样。
它不是递归的 CodeGo.net,你不必担心scrollviews或类似的东西tableviews。
- (void)viewDidLoad
[super viewDidLoad];
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
self.edgesForExtendedLayout = UIRectEdgeN
[self moveAllSubviewsDown];
- (void) moveAllSubviewsDown{
float barHeight = 45.0;
for (UIView *view in self.view.subviews) {
if ([view isKindOfClass:[UIScrollView class]]) {
view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y + barHeight, view.frame.size.width, view.frame.size.height - barHeight);
view.frame = CGRectMake(view.frame.origin.x, view.frame.origin.y + barHeight, view.frame.size.width, view.frame.size.height);
试试这个:
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
self.edgesForExtendedLayout = UIRectEdgeN
navigationController.navigationBar.translucent = NO;
如果在Interface Builder你“故事板与自动布局,可以用”顶级布局指南“添加constraints你的视图的顶部
这个值添加到您的应用程序的plist:“查看基于控制器的外观吧”,并将其设置为“NO”。
本文标题 :更新到iOS 7后的iOS 6的所有视图向上移动,并隐藏导航栏
本文地址 :CodeGo.net/608906/
Copyright (C) 2014 CodeGo.net 沪ICP备号 联&系& c&o&d&e&g&o &@&1&2&6&.&c&o&m您所在的位置: &
iOS开发中如何快速上手Xcode 6
iOS开发中如何快速上手Xcode 6
核子可乐译
Xcode的每一次版本更新都专注于为开发人员带来更为强大的工具方案,帮助他们更为顺畅地完成应用程序构建。在今年发布的Xcode 6版本当中,开发人员继续迎来更多软件设计与构建的全新方式。在今天的教程中,我们将对Xocde 6中的新型与改进功能加以概述,同时介绍大家应如何将其应用到自己的开发工作当中。
【51CTO译文】Xcode的每一次版本更新都专注于为开发人员带来更为强大的工具方案,帮助他们更为顺畅地完成应用程序构建。在今年发布的Xcode 6版本当中,开发人员继续迎来更多软件设计与构建的全新方式。在今天的教程中,我们将对Xocde 6中的新型与改进功能加以概述,同时介绍大家应如何将其应用到自己的开发工作当中。
1.Playgrounds
在今年的WWDC大会上,苹果公司正式公布了Swift&&一款面向苹果移动设备软件开发工作的全新编程语言。为了配合新语言的诞生,Xcode 6新增了一项名为Playgrounds的功能&&这其实是一套交互工作区,开发人员可以在此编写Swift代码并在无需将其运行在设备或者模拟器中的前提下获取实时运行效果反馈。这对于Xcode来说无疑是一种很好的补充,现在各位可以在将自己的代码成果正式添加到主代码库内之前,以实验性方式快速便捷地掌握地实时运行效果。
2.&Interface Builder
今年WWDC大会的另一大主题议题在于构建自适应式应用程序。相对于原本针对特定屏幕尺寸构建应用程序,苹果公司现在鼓励开发人员打造出能够忽略实际屏幕大小、自动与运行所在平台相适应的应用程序产品。
这一举措实际上源自最初诞生于iOS 6系统当中的Auto Layout及其数个后续版本,该方案允许开发人员直接创建能够同时运行在3.5英寸与4.0英寸屏幕上的应用方案。如今这一机制得到了进一步改善,iOS开发人员已经能够打造出直接运行在全部受支持iPhone平台上的应用程序,其中包括新一代4.7英寸iPhone 6与5.5英寸iPhone 6 Plus&&连iPad也可使用同一套代码库。
Interface Builder经历了一系列重大变更后才真正实现了对此类自适应式应用程序的开发支持能力。同时添加的其它一些新功能还给用户界面的设计流程带来提升。下面我们就来具体介绍其中出现的各项调整。
Size Classes
Size classes负责定义布局方案所使用的canvas尺寸。这些类允许大家允许开发人员指定应用程序的用户界面如何根据视图控制器的变化而交付可用显示范围。在Size Classes的帮助下,我们就能够构建起一款具备统一显示模板的应用程序。相比之下,过去开发人员需要设计两款彼此独立的显示模板,一套面向iPad、另一套则面向iPhone。
一个Size Class(尺寸类)能够定义显示区域内的一项相对数量,例如显示高度(即垂直维度)或者显示宽度(即横向维度)。目前Xcode提供两种尺寸类,分别为compact(紧凑)与regular(常规)。举例来说,一台iPhone在纵向显示模式下宽度紧凑但高度常规。而iPad则在纵向与横向显示模式下的宽度与高度皆为常规水平。
但大家应该会注意到,尺寸类并不一定非要与某台设备的某种显示模式相映射。举例来讲,一台iPad能够仅使用屏幕中的一小块区域来提供类似于iPhone布局风格的视图(即横向紧凑而纵向常规的尺寸类),同时也可以使用平板设备大尺寸屏幕所固有的天然风格布局(即横向常规而且纵向同样常规的尺寸类)。
大家需要利用Interface Builder canvas底部接近布局工具栏处的Size Classes控制机制对尺寸类进行调整。Interface Builder在起始状态下提供any(任意)宽度与any(任意)高度的尺寸类设置,我们可以根据不同设备的实际屏幕尺寸及横向/纵向显示模式在其中摆放各类用户界面组件并固定其位置。接下来,当可用屏幕尺寸发生改变时,大家则利用另一个不同的尺寸类对用户界面内的组件位置加以更新,从而提供更适合当前需要的布局效果。
自适应过渡类型
Xcode 6所提供的自适应过渡类型机制更适合与新的自适应布局配合使用,这是因为这些自适应类型能够根据自身运行所处的环境提供多种不同的视图方案。举例来说,在iPad上以Split View(分区视图)方式使用Show Detail(显示细节),那么Detail就会被取代; 但在iPhone上,同样的操作则会将Detail推送至Master处。一部分旧有过渡类型,例如push以及modal,现在已经遭到弃用。
Interface Builder canvas在交互能力方面要远胜过此前版本。过去,大家必须实际运行自己的应用程序才能对相关自定义对象、自定义字体以及组件位置的变更情况进行查看。而现在,我们完全可以通过Interface Builder的字体拾取器选择自定义字体,并将其直接显示在Interface Builder canvas当中。
大家甚至能够创建出自定义对象并在Interface Builder canvas之内对它们加以渲染。要实现这一目标,我们需要创建一套自定义框架,将自己的自定义类添加到该目标当中、并利用@IBDesignable标记(也就是Objective-C中的 IB_DESIGNABLE)对该类进行标。这样一来,Interface Builder就会意识到这是一个能够在canvas当中显示自定义内容的类。
除了能够在Interface Builder当中查看自定义对象之外,大家现在还可以利用@IBInspectable标记对属性加以标注、从而使它们出现在Interface Builder的检查菜单当中。在这里,我们可以对上述属于进行编辑、正如对视图内其它属性进行编辑一样。换言之,现在我们不必对某个类进行可设计标注,即可使其成为一项可检查属性。
大家还能够以纯代码形式指定设计时间。举例来说,我们可以利用这种方式将示例数据预先填充到视图当中,从而更为准确地感受界面观感。要实现这一点,大家需要重写prepareForInterfaceBuilder方法。除此之外,我们也可以利用#if TARGET_INTERFACE_BUILDER将选定代码添加或者移出最终Interface Builder渲染效果视图。
Preview Editor
Preview Editor现在允许大家对不同模拟设备上的多套预览图进行逐一查看。除了能够直接观察应用程序在不同设备上的运行效果之外,大家还可以通过设置变更每种设备的纵向或者横向显示模式。在这项新功能的帮助下,我们可以更为便捷地在不同设备及其显示模式下对应用程序的用户界面加以预览,而又不必真正将其投付运行。
3.&游戏开发
苹果公司在Xcode 6与iOS 8当中加入了新的游戏技术,分别名为SceneKit与Metal。SceneKit之前就已经在OS X平台上发挥作用,其实质是一套3D场景渲染工具。而Metal则是一套框架,能够被用于创建经过高度优化的图形渲染及计算任务&&这是因为它能够以低损耗方式与A7及A8 GPU相对接。
SpriteKit也已经在多个层面实现了改进,其中包括每像素物理平衡、物理区域、通用运动性与限制性、材质、光照以及阴影等等。
SpriteKit中的另一大重要新功能则是SpriteKit Level Editor,它允许我们以直观方式组建场景。正如大家可以无需编写任何代码就在Interface Builder当中创建用户界面一样,SpriteKit Level Editor能帮助我们以同样的方式轻松打造出SpriteKit游戏。
4.&OS X开发
Storyboard
Storyboard现在也被引入了OS X开发流程。正如在iOS开发环境中一样,Storyboard允许我们建立自己的视图布局并将这些视图与多种类型各异的过渡动画结合起来。不过截至撰稿之日时,一部分功能&&包括Storyboard在内&&依然无法在Xocde(6.0.1)中被用于OS X开发,相信等到OS X Yosemite版本发布时情况会得到改观。
手势识别功能现在已经可用于AppKit,而且其具体使用方式与iOS应用开发流程完全一致。大家可以在Interface Builder当中的Object Library(对象库)当中查看可用的手势操作类型。
本地化功能在Xcode 6中的运作方式与此前版本存在较大差别。现在大家可以将自己的全部本地化内容导出至XLIFF当中&&这是一套业界标准,通过大量翻译服务作为实现手段。当我们获取到翻译结果后,即可将其导入、而Xcode将把新内容合并到原有项目当中。顺带一提,大家应该为自己应用程序所支持的每一种语言创建一个与之对应的XLIFF文件。
大家现在能够在无需通过设置对设备或者模拟器的本地选项进行变更的前提下,直接预览全部本地化内容。要实现这一点,我们选择Product 〉Scheme 〉Edit Scheme,而后选择Run并点击Options标签。这时大家就可以从Application Language菜单中选择自己需要的语言项目了。Xcode还提供Double Length Pseudolanguage项目,这样即使还没有添加过任何其它语言、大家也仍然能够借此实现测试。在运行应用程序之后,我们即可查看到对应的本地化内容。
再有,我们也可以直接查看本地化内容而无需实际运行自己的应用程序。要实现这一点,大家需要利用Preview Editor在应用程序所支持的不同语言之间进行切换。默认语言会显示在编辑器的右下角位置,当我们对其进行点击后、即可看到一份包含各可用语言的列表。再次强调,如果要在不添加语言的前提下进行测试,大家需要使用Double Length Pseudolanguage机制。
6.&iOS模拟器
Xcode 6现在提供模拟器命名功能,这样开发人员就能够以&iPhone 5s&这样的名称来区分特定设备,而不再像过去那样使用通用型名称&&例如64位iPhone Retina。
模拟器尺寸可调节
现在大家已经可以从可调节尺寸iPhone与可调节尺寸iPad当中选择自己需要的设备类型。这两套方案允许我们自行指定模拟器的宽度、高度以及屏幕尺寸。通过这种方式,大家能够更轻松地测试自己的应用程序在苹果现有设备以及将来可能后续推出的设备上的运行效果,而用不着为每种设备下载不同的模拟器方案。
模拟器自定义配置
在新的iOS模拟器当中,大家可以将数据与配置设定结合在一起。具体而言,针对某款应用程序的特定版本运行一套配置方案及其相关数据,再针对其它版本运行另一套配置方案及其相关数据。这意味着大家可以模拟多位用户在设备上的使用感受。每一位用户都拥有属于自己的独立数据及配置方案。
7.&HomeKit附件模拟器
HomeKit框架允许大家的应用程序与用户家中的其它接入附件进行通信并加以控制。在目前的Xcode 6 beta版本当中,HomeKit附件模拟器已经作为固有组成部分存在、但尚属于Xcode内Hardware I/O Tools的功能之一。大家可以从iOS Dev Center中下载该框架。
视图调试工具
Xcode 6提供的实时视图调试功能可以大大简化应用程序用户界面的调试流程。现在开发人员可以暂停正在运行当中的应用程序,并以3D视图模式对当前界面加以剖析。视图调试工具能够显示当前视图层级以及Auto Layout设定。当大家选择一套视图时,即可以在检查工具内检查其属性或者跳转到辅助编辑器内的对应代码处。有了这种强大的支持,大家就可以解决很多以往令人头痛的难题&&例如Auto Layout冲突、查看一套视图为何会隐藏或者收起等。
要启动实时视图调试工具,我们首先需要启动自己的应用程序、而后点击调试工具栏上的Debug View Hierarchy(调试视图层级)按钮。
这时我们的应用程序会暂停运行,而整套用户界面将以3D可视化方式呈现在大家面前。我们可以拖动canvas中的任意位置来对视图进行旋转。
大家可以利用canvas下方的各个按钮在多种视图状态之间进行切换。
从左至右各个按钮依次为:
显示收起内容:&这个选项用于隐藏或者显示选定视图内被收起的内容。
显示约束:&这一选项能够显示选定视图内的Auto Layout约束机制。
重置视图区:&这一选项会将canvas重置为其默认状态。
调整视图模式:&这项模式允许大家选择自己以怎样的方式对视图进行查看。大家可以选择只查看视图边框、视图内容或者二者同时显示。
缩小、实际尺寸、放大:&允许大家对视图的大小进行调整。
Quick Look
Quick Look(快速查看)最初出现于Xcode 5版本当中,其作用在于帮助大家在调试过程中查看特定对象的内容。Quick Look支持多种常见对象类型,其中包括图像、贝塞尔曲线以及地图位置等等。
在Xcode 6当中,这项功能在改进之后能够支持两种新的对象类型,分别为视图(UIView与NSView)与自定义对象。要让Quick Look能够识别自定义对象,大家需要将debugQuickLookObject方法添加到自定义类当中。
经过强化的队列调试机制
调试向导会记录并显示最近执行过的块以及队列块。大家可以利用它来查看自己的队列块位于何处,同时检查执行中的具体设置信息。大家可以通过在Debug & Debug Workflow 〉 Always Show Pending Blocks in Queues菜单选项中将其选定来启用块调试功能。
调试计量器
调试计量器的作用是在调试过程中提供与应用程序资源使用情况相关的各类信息。Xcode 6对计量器进行了升级,现在其能够以图形方式对新的Metal框架以及用于支持Cloud与CloudKit内文档的iCloud进行分析。
除了上述改进之外,Xcode 6还引入了两款全新调试计量器,分别针对网络与磁盘活动。
网络活动计量器旨在显示我们的应用程序发出与接收到的数据量,同时提供一套开放连接列表。大家可以通过查看历史时间记录来监控网络使用情况,帮助自身找到何时及为何出现网络使用率峰值或者发生网络故障。
磁盘活动计量器则用于显示应用程序磁盘读取与写入操作的实时信息。它还能够提供所有打开文件的相关信息。磁盘I/O活动以历史时间表的方式交付,大家可以借此实现监控工作。
9.&资产目录
资产目录现在支持尺寸类。这意味着大家已经能够轻松为不同的尺寸类提供特殊的图像素材,从而保证自己的用户界面具备常规与紧凑两种高度及宽度设计效果。
原先的资产目录只支持PNG图像,但在Xcode 6中,新版本已经能够支持JPEG以及PDF矢量图像两种新格式。
10.&启动图像
大家可以利用XIB或者storyboard作为自己的应用程序启动图像。操作系统会为我们的应用程序生成必要的启动图像。有了这项功能,大家再也不必为启动图像提供独立的资产,同时也能够在Interface Builder当中对其进行设计。
要将XIB或者storyboard设定为自己的应用程序启动图像,我们需要选择Project Navigator中的对应项目并从目标列表中为其选择目标。在General标签之下,选定App Icons and Launch Images选项并从菜单标签Launch Screen File当中选择正确的文件。
XCTest框架当中也添加了多种新型API,用于实现对异步代码的测试工作。这项功能是通过预期对象,也就是XCTestExpectation实现的,其作用是描述预期事件。XCTestCase当中包含一种新型API,其始终在等待预期的满足条件并会为其设定超时时间。当所有事件都被切实执行或者达到超时时间之后,完成处理程序就会被调用。需要强调的是,该API能够在同一时间等等多个异步事件。大家现在可以更轻松地对系统中以异步方式执行的交互关系进行测试,例如文件I/O以及网络请求等等。
经过强化的XCTest框架现在能够对应用程序中各组成部分的性能进行量化。Xcode负责运行性能测试并允许大家定义一套基准性能指标。每一项后续测试都会与基准性能进行比对,并显示随时间推移而产生的变化情况,最终通过高亮显示问题区域来提醒大家可能由所提交代码引发的性能衰减。如果平均性能指标与基准水平存在明显差异,则意味着性能测试失败。对于开发人员来说,是一套对应用程序性能下降进行检测的理想方案。
随着性能测试机制的引入,现在我们已经有能力在Instruments当中进行剖面测试。大家可以为剖面选择一项或者一组测试套件,从而通过对Instruments的进一步调查及分析来了解测试为何会出现失败,最终找出导致性能衰退的根源。
12.&Instruments
Instruments的用户界面同样经过了更新。在新的模板选择方案当中,大家可以选择自己的设备、目标以及剖面分析流程的起始点。
我们可以看到一款名为Counters的全新模板,它与Events相结合能够对各个独立CPU事件进行深度探究与审视。大家甚至可以指定用于测量事件聚合乃至比率等对象的公式。
在Xcode 6当中,Instruments还提供对Swift的支持、大家也能够利用它对应用程序扩展进行配置。Instruments也提供对模拟器配置的支持,并将配置方案作为设备本身进行处理,这就大大简化了在模拟器中对进程的启动或者附加机制。
苹果公司仍在不断改善其开发者工具,而这也是Xcode在每个主要版本中都致力于实现的目标。Xcode 6相对于其前代方案更进一步,力图为开发人员提供足以提升工作流程并使整个开发过程更加顺畅的相关工具。
原文链接:
原文标题:Getting Up to Speed With Xcode 6
核子可乐译
【编辑推荐】
【责任编辑: TEL:(010)】
关于&&&&的更多文章
iOS系统从诞生之日起到现在,在这短短几年的时间内,凭借其硬件
既然强大的Android Studio来了,有什么理由不去用呢?
讲师: 8人学习过讲师: 151人学习过讲师: 100人学习过
谷歌推出的Android操作系统,似乎与甜点结下了不解之
Android Wear自上市以来褒贬不一,使得谷歌公司成为可
罗永浩再次证明他在公开场合即兴演说和论辩的强大技巧
本书是在《网管员必读―网络基础》(第1版)基础上修改而成的。全书共分9章,分别介绍计算机网络概述(修改)、数制(新增)、网
Windows Phone专家
Android开发专家
51CTO旗下网站ma_haile 的BLOG
用户名:ma_haile
文章数:38
评论数:24
访问量:454757
注册日期:
阅读量:15182
[匿名]51cto游客:
51CTO推荐博文
目标 : NavigationController导航的作用和使用
程序效果图如下 :
程序启动第一个 view 上面包含了一个 NavigationController 。为了区别视图界面,我们在第一个放了一个lable title为:rootView 第二个视图中& 放了一个 lable title为two,
同时第一个视图中还放了一个 button& 点击button 会跳入到第二个 视图中 ,并可以在 第二个视图中 点击 NavigationController 中的 root View(系统自动生成) 按钮 返回到 第一个视图中,这就是 NavigationController的作用。
NavigationController 是创建分层应用程序的主要工具,它在管理在管理以及换入,换出多个视图方面 和 TabBarController 比较类似,不同的地方是 NavigationController是作为栈(stack)来实现的。根视图控制器在堆栈最底层,接下来入栈的是General视图控制器和Auto-Lock视图控制器。可以调用 pushViewControllerAnimated:方法将视图控制器推入栈顶,也可以调用popViewControllerAnimated:方 法将视图控制器弹出堆栈 如下图:
&& 此图摘自于互联网
UINavigationController的结构组成
看下图,UINavigationController有Navigation bar &,Navigation View ,Navigation toobar等组成。
&& 此图摘自于互联网
下面我们使用控件来实现一次 :
为了让我更清楚的了解NavigationController的用法,我们创建一个空的 ios application 项目。
启动Xcode 工具 创建一个新的工程, ios-》application -》 empty application
填写工程信息 , 我这里项目名称起名为 : iphone_Sample_Navigation
class prefix 起名为 : Nav&&& 下面复选框部分 全部 保持不选中状态,如下图:
点击 next 点击 选择保存位置 。
创建好 项目后, 开始步入正题 。
1:& 首先创建一个 空的 xib 视图文件, 在视图文件中添加 一个UINavigationController
点击Xcode中的项目目录 ,右键 new file -》 ios -》User Interface -》 Empty & 点击 next, 选择 Device family 为 iphone 点击next&& 填写文件名,为 &NavigationViewContoller&& 其他保持默认。& 点击创建 。
创建后 Xcode 为我们生成了 一个 NavigationViewContoller.xib 文件 , 点击 打开它 。我们发现 该 xib 视图文件中是空的 ,不用担心 我们拖一个Navigation Contoller组件进去,此视图将作为我们的根视图控制器,它在堆栈最底层的。
2:和委托器建立连接。即使用委托器来管理我们的 NavigationController 在上图界面下打开 助理编辑器,把 NavigationController 组件以输出口(IBOutlet)的方式连接到 委托器的.h 文件中去。如图:
&上图中 红色 框框标示的部分为 建立连接后的 输出口。 并在委托器的 .m 文件中 生成相应的声明管理方法。
3: 打开我们的委托器。(这里为:NavAppDelegate.m)初始化 NavigationController 对象,并添加到委托中的view 中,这时 NavigationController 对象成为我们的根视图控制器对象了。& 代码如下:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
&&& self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
&&& [[NSBundle mainBundle]loadNibNamed:@&NavigationViewContoller& owner:self options:nil];
&&& [self.window addSubview:self.naviGationController.view];
&&& self.window.backgroundColor = [UIColor whiteColor];
&&& [self.window makeKeyAndVisible];
&&& return YES;
&上面代码中,蓝色代码部分 为核心代码 。
启动我们的 模拟器, 运行程序,就可以看到我们的 NavigationController视图界面了。
细心的童鞋 发现 怎么我们的NavigationController 的 头部没有标题呢。 呵呵是的,我们还没设置标题了 ,打开xib视图界面,依次展开左侧Objects栏目中的 NavigationController 选中 Navigation ltem 对象,打开我们的属性检查器,就会看到我们的 title 属性了(如下图), 设置它就可以看到 NavigationController 的头部标题了, 赶快去试试吧。
接着 我们来试试多视图跳转。 我们需要在创建一个 视图 controller ,& 选中Xcode中的项目目录 右键 -》 new file& -》Cocoa Touch -》Objective -C class 创建一个 带xib的controller 这里命名为 :NavTwoViewController 继承至 UIViewController 并选中 With XIB for user interface 复选框 创建。
打开 NavTwoViewControlle,xib 文件,在这个文件我们只需要放个 label 来标示为第二个视图界面即可
保存并关闭。
继续打开我们NavigationViewContoller.xib 视图界面& 为我们的视图界面拖放一个Button按钮。并给它设置个title属性,同样点开属性检查器,在属性检查器,有title 属性,这个按钮的作用是 ,点击它 跳到我们刚刚创建的 view
拖放好button 后 需要为 改连接创建一个 动作连接, 还在在这个视图界面下,打开助理编辑器,把这个button 以Action 方式连接到 委托器的 头文件中,注意:Connect: 需要选择为Action 如下图 :
上图中为 连接后成功后的界面, 此时在委托器的.m 文件中也会为我们生成这个方法,我们实现这个方法,来实现跳转 。代码如下 :
- (IBAction)gotoView:(id)sender {
&&& NavTwoViewController *root=[[NavTwoViewController alloc]initWithNibName:@&NavTwoViewController& bundle:nil];
&&& root.title=@&two view&;
&&& [self.naviGationController pushViewController:root animated:YES];
要在 委托器类(NavAppDelegate.m)中使用 NavTwoViewController 对象 还需要在 委托器的 开始引入这个类,代码如下(蓝色部分):
#import &NavAppDelegate.h&
#import &NavTwoViewController.h&
@implementation NavAppDelegate
保存 运行 即可 , root.title=@&two view&; 为第二个界面设置 导航title
源码下载地址 :
/ext/down_att.php?aid=36077&code=1352本文出自 “” 博客,请务必保留此出处
了这篇文章
附件下载:  
类别:┆阅读(0)┆评论(0)
请输入验证码:

我要回帖

更多关于 ios 加载xib中控制器 的文章

 

随机推荐