【TabBar嵌套Navigation案例-JSON的简单使用 Objective-C语言】

news2024/11/24 4:22:46

一、JSON的简单使用

1.我们先来看一下示例程序里边,产品推荐页面,

通知

在我们这个产品推荐页面里面,

通知

它是一个CollectionViewController,注册的是一个xib的一个类型,xib显示这个cell,叫做item,然后,这个邮箱大师啊,包括这个图标,以及这些东西,都是从哪儿来的呢,都是从一个,也是一个数据文件,只不过它是一个JSON了,不叫plist,

我们说,你如果写成plist形式,我们说,这个xib,可能是一个字典,这里边,有一个Key,就是图标,有一个Key,就是文字,

然后呢,这个JSON呢,也是可以达到同样的目的,它都可以用来存储数据,包括字典啦、数组啦、之类的东西,

接下来,我们就来给大家去看一下啊,这个文件,

通知

在我们的示例程序里边,有一个叫做more_project.json,的文件,打开,

通知

文字太小了啊,我用xCode打开吧,

通知

这个呢,就是我们JSON的一个文件,它本质上,就是以一定格式写出来的字符串而已,它就是一个字符串,只不过它有一定的格式,我们管这种格式,叫做JSON,它本质上,也是一坨字符串,

然后呢,这个里边,首先,这儿有一个中括号,

通知

中括号,表示数组,

大括号,表示字典,

实际上,这一段儿数据,这整个这个文件,这一坨字符串,表示的什么东西,最外面,是一个中括号,是一个数组,就跟我们plist,最外层的根节点,是一个Array,是一样的,然后呢,这个Array下面,又有很多大括号的东西,字典,plist里边,也是一样的,相当于是Array下面,有很多的Dictionary,然后呢,Dictionary,我们说,字典是键值对的,它这个里边,冒号左边,就是Key,冒号右边,就是Value,这就是一个字典的Key-Value,它们的功能,都是一样的,都是可以用来保存一些数据,不一样的,仅仅是格式的区别,

我们plist,用这个文字的形式,去打开的话,它是一堆XML,一种标签儿的一种格式,然后呢,我们这个JSON,是这种格式,实际上,大家以后在学习网络以后呢,传输网络的一些数据啊,都是用JSON的,然后,如果写过网络开发的同学,就会对JSON不陌生啊,然后呢,这就是我们说的JSON的格式,然后呢,我们主要是来学习一下解析它,

这个里边呢,记着,JSON和plist,就是格式不一样,功能都是一样的,都是用来保存一些数据的,接下来,我们就来解析一下啊,

2.然后呢,我们先新建一个项目,

通知

06-json解析,

通知

首先呢,来到我们的ViewController,再把我们刚才的文件,JSON,拖过来,more_project.json,

通知

点击Finish,

通知

解析这个json,

通知

解析以后呢,我们也是要以模型的形式,跟plist一样,要字典转模型,等等一些东西,接下来,我们就一步一步来做,

3.首先呢,我们在这个ViewController里边,直接去解析它,

首先,在interface里边,我们说,plist里面,根节点是什么,我在外面,就声明一个什么,JSON,也是一样,

通知

根节点是一个Array,我在这个里边,也要有一个Array,

@property(nonatomic,strong)NSArray *products;

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

NLP 主要语言模型分类

文章目录 ngram自回归语言模型TransformerGPTBERT(2018年提出)基于 Transformer 架构的预训练模型特点应用基于 transformer(2017年提出,attention is all you need)堆叠层数与原transformer 的差异bert transformer 层…

SpringBoot 项目如何使用 pageHelper 做分页处理 (含两种依赖方式)

分页是常见大型项目都需要的一个功能,PageHelper是一个非常流行的MyBatis分页插件,它支持多数据库分页,无需修改SQL语句即可实现分页功能。 本文在最后展示了两种依赖验证的结果。 文章目录 一、第一种依赖方式二、第二种依赖方式三、创建数…

低空经济刚需篇:各种道路不畅地区无人机吊装详解

低空经济作为近年来备受关注的新兴经济形态,其核心在于利用3000米以下的低空空域进行各种飞行活动,以无人机、电动垂直起降飞行器(eVTOL)等为载体,推动交通、物流、巡检、农林植保、应急救援等多领域的变革。在道路不畅的地区,无人…

信息安全数学基础(20)中国剩余定理

前言 信息安全数学基础中的中国剩余定理(Chinese Remainder Theorem,简称CRT),又称孙子定理,是数论中一个重要的定理,主要用于求解一次同余式组。 一、背景与起源 中国剩余定理最早见于我国南北朝时期的数学…

存储 NFS

目录 1.存储的应用场景 2.存储分类 3.NFS服务组成 4.环境说明 ​编辑 5.服务端部署 6.NFS服务端的配置 7.NFS服务端本地进行测试 1.存储的应用场景 存储一般用于上传网站数据(内容),一般用于在网站集群中。使用存储的话用户上传的…

推荐系统-电商直播 多目标排序算法探秘

前言: 电商直播已经成为电商平台流量的主要入口,今天我们一起探讨推荐算法在直播中所面临的核心问题和解决方案。以下内容参考阿里1688的技术方案整理完成。 一、核心问题介绍 在电商网站中,用户的主要行为是在商品上的行为,直播…

Java8四大函数接口

一、说明 1.函数式接口的使用说明说明: 函数式接口是Java8的一个新特性。如果一个接口中,只声明了一个抽象方法,则此接口就称为函数式接口。我们可以在一个接口上使用 FunctionalInterface 注解,这样做可以检查它是否是一个函数…

【数据结构】排序算法---基数排序

文章目录 1. 定义2. 算法步骤2.1 MSD基数排序2.2 LSD基数排序 3. LSD 基数排序动图演示4. 性质5. 算法分析6. 代码实现C语言PythonJavaCGo 结语 ⚠本节要介绍的不是计数排序 1. 定义 基数排序(英语:Radix sort)是一种非比较型的排序算法&…

基于ExtendSim的 电子制造 仿真模型

说明: 此模型表示电路板制造设施。该过程有4个步骤: *焊料制备 *组件放置 *烤箱 *检查 详情: *烤箱的容量为10张卡,但如果烤箱循环开始时仅能处理5张卡,则最多只能处理5张。 *如果检查员发现问题,他们将修理…

C++——map和set的使用以及map系列

目录 map和set的使用 1. 序列式容器和关联式容器 2. set系列的使⽤ 2.1 set和multiset参考⽂档 2.2 set类的介绍 2.3 set的构造和迭代器 2.4 set的增删查 set的增删查关注以下⼏个接⼝即可: 2.6 find和erase使⽤样例: lower_bound(); upper_bo…

Css_动态渐变圆圈旋转效果

1、效果图 2、实现代码 <template><div class"box"><div class"line"></div><div class"lineNew"></div></div> </template><script lang"ts" setup></script><styl…

MySQL篇(存储引擎 - InnoDB存储引擎架构)(持续更新迭代)

目录 一、逻辑存储结构 1. 表空间 2. 段 3. 区 4. 页 5. 行 二、架构 1. 简介 2. 内存结构&#xff08;四部分&#xff09; Buffer Pool Change Buffer Adaptive Hash Index Log Buffer 3. 磁盘结构&#xff08;七部分&#xff09; System Tablespace File-Per-…

pdf文件怎么直接翻译?使用这些工具让翻译变得简单

在全球化日益加深的职场环境中&#xff0c;处理外语PDF文件成为了许多职场人士面临的共同挑战。 面对这些“加密”的信息宝库&#xff0c;如何高效、准确地将英文pdf翻译成对应语言&#xff0c;成为了提升工作效率的关键。 以下是几款在PDF翻译领域表现出色的软件&#xff0c…

化繁为简:中介者模式如何管理复杂对象交互

化繁为简&#xff1a;中介者模式如何管理复杂对象交互 中介者模式 是一种行为型设计模式&#xff0c;定义了一个中介者对象&#xff0c;来封装一组对象之间的交互。中介者模式通过将对象之间的交互行为从多个对象中抽离出来&#xff0c;集中封装在一个中介者对象中&#xff0c;…

智能除螨仪——NV040D-SOP8语音芯片方案引领除螨仪新时代

随着物联网技术的快速发展&#xff0c;除螨仪作为家庭清洁的重要工具&#xff0c;其智能化、人性化的设计成为提升市场竞争力的关键。置入语音芯片的除螨仪&#xff0c;通过开机提示、工作状态反馈、操作指引、故障提醒等内容。用户可以更加直观地了解除螨仪的工作状态&#xf…

开发谷歌插件之GA埋点

目录 一、背景 二、踩坑 三、谷歌插件开发的GA埋点的实现方式 一、背景 开发了一个谷歌插件&#xff0c;领导需要对用户的一些行为进行分析&#xff0c;于是让我在代码里面加上GA埋点。由于我们的PC端的项目一直都有进行GA埋点&#xff0c;当时就想着&#xff0c;这不就是把…

Spring Cloud Alibaba-(4)Sentinel【流控和降级】

Spring Cloud Alibaba-&#xff08;1&#xff09;搭建项目环境 Spring Cloud Alibaba-&#xff08;2&#xff09;Nacos【服务注册与发现、配置管理】 Spring Cloud Alibaba-&#xff08;3&#xff09;OpenFeign【服务调用】 Spring Cloud Alibaba-&#xff08;4&#xff09;Sen…

界面控件Telerik UI for WinForms 2024 Q3概览 - 支持合并单元格等

Telerik UI for WinForms拥有适用Windows Forms的110多个令人惊叹的UI控件。所有的UI for WinForms控件都具有完整的主题支持&#xff0c;可以轻松地帮助开发人员在桌面和平板电脑应用程序提供一致美观的下一代用户体验。 本文将介绍界面组件Telerik UI for WinForms在今年第一…

Java语言程序设计基础篇_编程练习题***18.32 (游戏:骑士的旅途)

目录 题目&#xff1a;***18.32 (游戏:骑士的旅途) 习题思路 代码示例 输出结果 题目&#xff1a;***18.32 (游戏:骑士的旅途) 骑士的旅途是一个古老的谜题&#xff0c;它的目的是使骑从棋盘上的任意一个正方 形开始移动&#xff0c;经过其他的每个正方形一次&#xff0c;如…

R18 5G网络中 AI/ML技术特性及其在5GS和NG-RAN中的应用

随着5G技术的发展&#xff0c;人工智能&#xff08;AI&#xff09;和机器学习&#xff08;ML&#xff09;在网络中的应用越来越广泛。本文将介绍R18 5G网络中AI/ML的新特性&#xff0c;包括在5G系统&#xff08;5GS&#xff09;中的应用、在新一代无线接入网&#xff08;NG-RAN…