【导航控制器的基本使用 Objective-C语言】

一、导航控制器的基本使用

1.那接下来呢,我们就要讲解这个重中之重了啊,导航控制器,大家一定要注意听,那首先呢,我们先来看ppt,引导一下,

通知

导航控制器.pptx,打开,

通知

那接下来呢,我们就要学习这个多控制器的管理了,

里面的第一个内容,叫做导航控制器,

通知

那今天呢,我们主要针对的是上面这个啊,UINavigationController

第二个,UITabBarController,大家可以忽略,

然后呢,主要是,UINavigationController的工作原理

然后呢,以及Segue(/ˈseɡweɪ/,赛格瑞;联线)的使用,

然后呢,以及,控制器之间的数据传递,

但今天呢,我们只是,小小的引入一下这个数据传递,不要太担心,

走着,

通知

然后呢,多个控制器,为什么要给大家介绍这个多个控制器管理呢,

因为我们在平常使用应用程序的时候,不管是安卓、不管是iOS、以及其他的什么塞班,对吧,不管你什么应用,它都有很多的界面儿,

每一个界面儿,其实呢,都相当于一个控制器,

每出来一个界面儿,它都要给你加载一个控制器,

把这个界面儿推过来啊,返回去啊,

那这个呢,就牵扯到这个多个控制器管理了,

所以呢,也就是我们今天要给大家介绍的UINavigationController,

然后,这个UITabBarController呢,它是标签控制器,

这是我们后面要给大家讲解的,

不过呢,也给大家提一下啊,

这个TabBarController,什么时候用呢,你在微信里面,你注意到没有,底下有四个选项,

1)联系人

2)聊天

3)动态

4)你自己的信息

对吧,

然后,它的,底下这个条儿呢,就是通过标签儿控制器里面的一个TabBar实现的

那这个后面再去研究了啊,知道就行,

NavigationController,就是针对你上边儿这一部分,顶部是不是有一个导航条,

那我们也可以看一下我们模拟器,

通知

比如说,设置里面,

通知

一点击,然后呢,整个界面儿,就相当于一个导航控制器,

通知

只不过呢,它里面内置的一个TableViewController

然后呢,这个导航控制器,主要作用是干嘛的呢,主要就在这里,

通知

主要就在这儿,现在这个设置里边,是不是什么都没有,

但是,当你进行跳转的时候,你点击General,跳转,看到没有,

通知

上边就有内容了吧,

你过去(点About)

通知

回来(点击Settings)

通知

这些东西,跳转过去,然后呢,返回,这些操作呢,都是通过我们导航控制器,来实现的,

现在先感受一下啊,还有几个概念的东西,需要给大家说一下,

通知

用一个控制器A去管理3个控制器B、C、D

这个控制器A被称为控制器B、C、D的“父控制器”

但是这里所说的“父控制器”,不是说,就是我们在控件里面,父控件、子控件、你是不是装进去啊,

父控件、与子控件的关系,是什么,子控件是不是装到父控件里面了,addSubview,是不是啊

但是我们这里面,它不是这个原理啊,

它只是相当于一个我这个导航控制器相当于一个容器,

然后你放过来一个控制器,把B、C、D三个控制器放进来,

明白吧,不是说跟我们控件一样,add什么的

不是这么一个道理啊,

我们继续往下看,

通知

那这个呢,就是我们“设置”界面儿了,当你点击“通用”,是不是跳过去,然后呢,点击“设置”返回来,如果你点击“键盘”,跳过去

通知

走一个

通知

二、那接下来,就牵扯到这个导航控制器的基本使用了

1.那给大家说一下啊,这个导航控制器,就是UINavigationController

它的基本使用步骤呢,我们先来了解一下啊,

1)初始化UINavigationController

2)设置UIWindow的rootViewController为UINavigationController

这个是不是很熟悉啊,第二步是不是看的很熟,

3)将第一个视图控制器设置为UINavigationController的根视图控制器

4)通过push的方法去新建子控制器

5)通过pop的方法可以返回到上一个控制器

2.那这个push和pop,我再给大家说一下

我们这个ppt就看完了啊

然后呢,再给大家看一下模拟器

这个push什么时候使用呢

通知

就是在这个TableView里面,比如说,选中一行,General,

通知

那你调过来这个过程,是不是从左边儿、额、不是、从右边儿显示过来,对吧,

它这个过程呢,就叫做一个push的过程

通知

但是,当你点击Settings的时候,

通知

点击Setting,返回的时候,

这个过程相当于一个pop的过程

通知

明白吧,一个push、一个pop、一个push、一个pop

2.那接下来呢,我们就上代码了啊,然后呢,边写边看啊,边写边说

那我先新建一份儿代码

通知

选择这个iOS下面的Application,里面的Single View Application

给它起个Name呢,

通知

点击Next,看一下是第几份儿代码了

通知

05已经有了吧,该06了

06 - 导航控制器的基本使用

通知

点击Next,点击Create

好,那跟上午一样

通知

现在呢,我不用系统的这些控制器了,我还是用我们自定义的方式来加载控制器,那我是不是还得把它们删了,再写一遍啊,上午我们只写了两遍那个什么创建window啊,什么东西

通知

1)选中这三个,ViewController.h、ViewController.m、Main.storyboard

点击Delete

然后呢,点击Move to Trash

通知

2)然后呢,把这个Main,是不是得删掉

通知

对,删掉,按住command ,走

通知

3)然后呢,那紧接着,是不是在AppDelegate里面,就可以写了

通知

对,第三步,把这个注释删掉

通知

删掉

通知

再写一遍啊,

1)创建window

2)设置window的根控制器

3)设置主窗口并可见

通知

1)好,创建window,然后呢,这个大小,就是屏幕大小

self.window = [UIWindow alloc] initWithFrame:

通知

self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];

通知

2)设置window的根控制器

然后呢,这个先不说了,

3)将窗口设置为主窗口并可见

[self.window makeKeyAndVisible];

通知

2.设置window的根控制器

现在,我们不用其他的了啊,我们就用这个UINavigationController

有思路吗,我现在给你了,已经给你了,就是这个UINavigationController

通知

导航控制器

怎么办呢,

1)第一步:创建一个导航控制器

通知

上午呢,可能没给大家说,那我们这里直接写了啊,

UINavigationController *

通知

UINavigationController *nav = [[UINavigationController alloc] init];

通知

2)把这个nav设置为窗口的根控制器

self.window.rootViewController = nav;

通知

这样写,可以吗,

可以的啊,上午的话,我们没有说那种简单的操作啊,比如说,我直接UIViewController

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/200202.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

21款奔驰GLC300L升级HUD抬头显示 平视仪表信息

说起HUD抬头显示这个配置,最初是用在战斗机上的,它可以让战斗机驾驶员读取飞机的各种信息和状态,而无需移动头部,这样就能够有效的提高效率。但随着汽车技术的进步HUD这种配置也逐渐下放到民用车上。发展到今,车上的抬…

API接口的接入|数据服务化在京东的实践

导读 本次分享的主题为数据服务化在京东的实践,主要包含三个模块:数据服务化的缘起、成长、如何将系统做得更好。 01 缘起:数据服务化从 0 到 1 1. 缘起 京东数据智能部负责维护数据资产和对外提供数据服务,很多业务方要求我们…

vue+jsonp编写可导出html的模版,可通过外部改json动态更新页面内容

效果 导出后文件结果如图所示,点击Index.html即可查看页面,页面所有数据由report.json控制,修改report.json内容即可改变index.html展示内容 具体实现 1. 编写数据存储的json文件 在index.html所在的public页面新建report.json文件&#xff…

为什么单片机课要学 51+ 汇编,而不直接学 STM32?

为什么单片机课要学 51 汇编,而不直接学 STM32? 为什么单片机课要学 51 汇编,而不直接学 STM32? 这个没有规定一定要学那个51 汇编。 只能说C51更为简单、控制和理解硬件更为容易上手。 你可以在学习C51的时候,可以很容…

低功耗蓝牙模块在工业自动化中的创新应用

随着工业自动化的不断发展,低功耗蓝牙技术在工业环境中的应用正逐渐引起广泛关注。本文将深入探讨低功耗蓝牙模块在工业自动化中的创新应用,着重介绍其在传感器网络、设备监测和生产优化等方面的优势,以推动工业自动化向更高效、可靠、智能化…

网站优化进阶指南:如何用Python爬虫进行网站结构优化

前段时间一个做网络优化的朋友找我,问我能不能通过爬虫的手段对他们自己的网络进行优化。这个看着着实比较新颖,对于从事爬虫行业的程序员来说,很有挑战性,值得尝试尝试。 说白了使用爬虫进行网站优化需要对网站的结构、内容、链…

华为与夏普达成全球专利交叉许可协议 / 阿里巴巴发布千亿级参数的自研夸克大模型|魔法半周报

我有魔法✨为你劈开信息大海❗ 高效获取AIGC的热门事件🔥,更新AIGC的最新动态,生成相应的魔法简报,节省阅读时间👻 🔥资讯预览 华为与夏普达成全球专利交叉许可协议,5G领域领先地位再次得到认可…

Docker的基本概念和优势,以及在应用程序开发中的实际应用

文章目录 概要 基本概念 容器 (Container): 镜像 (Image): Dockerfile: 仓库 (Repository): 容器编排 (Orchestration): Docker Compose: Docker Daemon 和 Docker Client: 网络 (Network): 数据卷 (Volume): 主要优势 应用场景 小结 概要 Docker 是一种容器化平台,…

大数据之 Hadoop

hadoop主要解决:海量数据的存储和海量数据的分析计算 hadoop发展历史 Google是hadoop的思想之源(Google在大数据方面的三篇论文) 2006年3月,Map-reduce和Nutch Distributed File System(NDFS)分别被纳入到Hadoop项目&#xff0c…

webshell之字节码免杀

字节码生成 javac生成字节码 这种方式简单的说就是用ideal将java文件编程成class文件,然后将class读取出来用base64编码即可,这种方式比较方便简单,不需要会使用ASM,javassist等字节码框架。 Shell.java javassist生成字节码 j…

新手老师如何管理班级的日常工作

作为一名新手老师,管理班级的日常工作可能会是一项挑战,但以下是一些可能有用的建议: 建立良好的班级文化 班级文化是班级氛围的重要组成部分,对于学生的学习和成长具有重要影响。作为老师,要积极营造一种积极向上、团…

冒泡排序以及改进方案

冒泡排序以及改进方案 介绍: 冒泡排序属于一种典型的交换排序(两两比较)。冒泡排序就像是把一杯子里的气泡一个个往上冒一样。它不断比较相邻的元素,如果顺序不对就像水泡一样交换它们的位置,直到整个序列像水泡一样…

viple模拟器使用(四):unity模拟器中实现沿右墙迷宫算法

沿右墙迷宫算法 引导 线控模拟可以使得通过用户手动操作,实现机器人在模拟环境下在迷宫中行走(即:运动),算法可以使得机器人按照一定的策略自动行走,沿右墙迷宫算法就是其中的一种策略。 目的 运行程序后&…

C语言--求x的y次方【详细解释+代码优化】

一.利用库函数pow&#x1f357; pow函数的原型为&#xff1a; double pow(double base, double exponent); base为底数&#xff0c;exponent为指数&#xff0c;传入两个参数&#xff0c;返回值是计算的结果。需要引用头文件#include<math,h>. //方法一&#xff1a;利…

快捷键被占用了,这能忍吗?赶紧使用 OpenArk 找出元凶并干掉它!!!

文章目录 一、 问题&#xff1a;快捷键被占用了导致影响工作效率二、OpenArk 2.1 OpenArk简介 功能发布官方链接 2.2 下载OpenArk2.3 运行OpenArk2.4 被占用的热键元凶到底是谁&#xff1f; 三、总结 一、 问题&#xff1a;快捷键被占用了导致影响工作效率 你是否遇到过&#x…

教师如何备课,上好一堂课

作为一名教师&#xff0c;备课是上好一堂课的关键。备课不仅仅是准备教材和教具&#xff0c;更是制定教学计划、设计教学方法、预测学生学习效果的重要环节。接下来我分享几点备课和上课的心得。 深入理解教学大纲 教学大纲是备课的指导性文件&#xff0c;只有深入理解教学大纲…

怀旧经典——魔力宝贝秒遇怪功能分析

《魔力宝贝》作为一款非常早的网络游戏&#xff0c;可谓是经久不衰。作为这样一款古老的2D回合制网游&#xff0c;早些年的一些开发理念也导致了游戏中的漏洞比较多。秒遇怪和不遇怪是回合制网游玩家梦寐以求的外挂功能&#xff0c;而这款游戏就可以实现。 所谓秒遇怪是只在无…

额,收到阿里云给的赔偿了!

众所周知&#xff0c;就在刚过去不久的11月12号&#xff0c;阿里云突发了一次大规模故障&#xff0c;影响甚广。 以至于连咱们这里评论区小伙伴学校的洗衣机都崩了&#xff08;手动doge&#xff09;。 这么关键的双11节点&#xff0c;这么多热门业务和产品&#xff0c;这么大规…

京东API接口的接入(京东工业)

在技术交流群&#xff0c;大家有探讨稳定获取京东商品主图、价格、标题&#xff0c;及sku的完整解决方案。这个引起了我技术挑战的兴趣。 目前&#xff0c;自己做了压测&#xff0c;QPS高、出滑块概率极低&#xff0c;API整体稳定&#xff0c;可满足业务场景的性能需求。 公共…

【分布式系统学习】CAP原理详解

CAP原理详解 前言CAP一张图 一、概念1.1 关键词解读1.2 关于CAP&#xff08;拆分解读&#xff09;1.3 CAP原理精髓 二、CAP模拟场景举例理解三、CAP原理证明为什么不能同时满足&#xff08;下面举例说明&#xff09;3.1 必须满足分区容错性P下的处理方式3.2 不是必须满足分区容…