swift5教程中文版,swift5教程中文版pdf

http://www.itjxue.com  2023-01-20 00:56  来源:未知  点击次数: 

swift 教程 swift介绍

1、要使用swift须拥有一台苹果电脑。因为集成开发环境XCode只能运行在OS X系统上。电脑系统必须在OS 10.9.3及以上,电脑必须安装Xcode集成开发环境。

2、下载完成后,双击下载的 dmg 文件安装,安装完成后我们将 Xcode 图标踢移动到应用文件夹。Xcode 安装完成后,就可以开始编写 Swift 代码了。接下来我们在应用文件夹打开 Xcode,打开后在屏幕顶部选择 File = New = Playground。接着 为 playground 设置一个名字并选择 iOS 平台。

3、如果你想创建 OS x 程序,需要导入 Cocoa 包 import Cocoa以上程序载入后,会在Playground 窗口右侧显示程序执行结果。

4、选择一个Single View Application,并点击next,创建一个简单示例app应用。

5、接着我们输入项目名称(ProductName),公司名称(Organization Name),公司标识前缀名(Organization identifier) 还要选择开发语言(Language),选择设备(Devices)。其中Language有两个选项:Objective-c和swift,因为我们是学习swift当然选择swift项了。 点击Next下一步。

6、选择存放的目录,如果要使用Git源代码管理,将勾上Source Control的create git repository on My Mac. 点击create创建项目。

7、项目创建后,默认生成了一个示例文件,可以看到swift将oc中的h和m文件合并成了一个文件(即swift后缀名文件). Main.storyboard相当于xib文件,有比xib更多的功能。

8、打开main.storyboard,默认看到一个简单的空白的应用界面,大小为平板界面大小。 如果开发都只需要开发兼容iphone手机的app,那么可以把Use Auto Layout的勾去掉(默认为勾上)。弹出了一个对话框,让我们选择界面尺寸,iPhone 或 iPad。我们选择iPhone的尺寸。

9、界面添加点内容,在右下方找到Text控件,将它拖入storyboard上,并双击写入文本Hello World!

10、运行一下模拟器(command+R 快捷键或在菜单栏中选择 Product = Run)。

至此,第一个Swift项目就完成了。

10、swift介绍

《Swift》是一种支持多编程范式和编译式的开源编程语言,苹果于2014年WWDC(苹果开发者大会)发布,用于开发 iOS,OS X 和 watchOS 应用程序。 Swift 结合了 C 和 Objective-C 的优点并且不受 C 兼容性的限制。 Swift 在 Mac OS 和 iOS 平台可以和 Object-C 使用相同的运行环境。 2015年6月8日,苹果于WWDC 2015上宣布,Swift将开放源代码,包括编译器和标准库。

Swift 是一种全新的编程语言,结合了 C 和 Objective-C 的优点,并且不受C兼容性的限制。Swift 采用的安全编程模式添加了很多新特性,这使得编程更简单,更灵活,也更有趣。Swift 在 Foundation 和 Cocoa的基础上构建框架,并且采用了很多 Objective-C 的命名参数以及动态对象模型,并且支持过程式编程和面向对象编程。Swift 将现代编程语言的精华和苹果工程师文化的智慧结合了起来,既能够开发简单的小程序,也能够构建出一套完整的操作系统。

iOS Swift5从0到1系列(十一):JD首页UI结构 & 数据分析

我们之前有一篇《抓包工具 Charles》中,有告诉大家如何抓取 Https 的 App 数据,其中,Demo 给出了 JD 首页的抓取;本系列课程开始时,我就说过,我们会针对 JD App 的模仿来学习 iOS Swift5 的开发。

本篇没有技术含量,不涉及到技术,仅分析 UI 和数据(不要吐糟我水文,为后面的 UI组件开发做铺垫)。

我们先来看一下 JD App 长的如何,如下图:

上图未完全展示所有的元素,大家如果有 JD App,可以自行打开查看:

我们都知道,首页非常重要,是最顶级的流量入口,因此,首页会通过不同的 UI 组件,来尽可能多的、换着花样的方式来向用户展示推荐商品或者是爆款商品,除了以上 JD 用到的这些 UI 组件,还可以有其它 UI 组件(大家可以多看看不同的 App,如:天猫、PDD、爱奇艺、腾讯视频等)。

用 Charles 抓包后,我们拿到原始的请求,之后可以使用其它网络请求工具,来反复请求该接口,这里,我用 postman 来模拟请求:

该工具,可以将返回的 JSON 美化,方便我们查看数据结构和字段。

之前我就说了,会吐糟 JD App 的首页接口返回的数据结构,简直是『目瞪狗呆』!为啥这么说,请看我来分析(特意开一篇来吐糟):

上图中,我们可以看到 floorList 是一个对象数组:

第一个对象,就是我们说的类目导航栏,其中有个 content 字段,也是一个对象数组;

接下来,我们分析第二个对象,它是轮播图(Banner):

我们跳过第三对象,分析第四个对象,它就是小图标(豆腐块),其中 content 字段,类型变成了对象,而不是对象数组;

好了,后面的我不想分析了,分析暂时到此,为何?

因为,当初我分析了前两个对象(第一、二)后,竟然天真的以为所有的对象中 content 字段都会是对象数组,然后,我去反序列化时,直接报错,我就很奇怪,对我定义的接收 model 做减法,最终定位到 content 字段有问题,然后,依次看了 floorList 的数据,才发现真相(我表示,负责 JD 首页的程序猿是有多么的悲哀);然而,转念一想,其实我可能错了,大公司是分垂直业务线的,因此,会有多个垂直业务团队(产品、运营、研发、测试等),所以,首页也就是这些垂直团队的必争之地,因此,首页接口可能只是聚合了这几个业务团队的接口,App端也是由相应的业务团队自己负责,而不是如小公司一样,由一人负责。

本篇分析到此,先暂时和大家说再见,下一篇开始,我们将进入组件化的开发、然后再集成在一起,用真实的数据将所有的 UI组件窜起来展示最终的效果。

Swift5之开篇

开始学习Swift5,记录一下学习的内容。

昨天开始看apple的文档,感受了下SwiftUI,SwiftUI5的功能确实简单易用。但是感觉使用SwiftUI前还是应该把Swift本身语法搞搞清楚。

想学语法就遇到第一个问题,似乎没有经典的console应用程序选项。之后看到Playgrounds项目可以实现REPL,但新建项目后在缺省显示的内容中,无论如何也显示不出来,后来加了一个Page后,REPL才可以使用。所以可见REPL只有在.xcplaygroundpage文件上才可以使用。

可以使用REPL了,那之后就可以尝试swift的其他语法了。

[转载]Swift5中CFStringTransform的使用

参考自原文

原文参考自

名称按照字母排序,名称可能为数字、纯中文、纯英文、纯日文、或者各种语言的混合。

在Swift中可以使用Core Foundation下的CFStringTransform方法转换。

iOS Swift5从0到1系列(七):不得不了解的知识——SafeArea

苹果在出了刘海屏后(iPhoneX),我们就需要考虑如何来适配竖屏、横屏的边界情况了。如果你百度过,你会发现非常多的,各种根据分辨率来判断是否是刘海屏而调整 UI 布局。然而,我们需要结合着应用的实际情况、使用人群、产品or公司要求,来考虑需要从哪个系统版本开始支持,例如:微信目前就是从 iOS 11 开始支持(IM 这块基本算是其一家独大),而对于电商APP这块,竞争非常的激烈,天猫、淘宝、pdd都还是从 iOS 9开始;站在这些APP的角度出发,电商是尽量不放过每一位用户,而微信是你周围朋友家人都使用,你如果系统低于 iOS 11,就可能『失联』,只能被迫升级至 iOS 11。本系列都是从 iOS 11开始,只是分享给大家学习。

正如我在前言中所说,苹果第一款刘海屏手机是 iPhoneX,其搭载的 iOS 系统就是 11,因此,我们有如下适配选择:

当我们开发无导航栏页面(一级页面)或自定义导航栏时,我们要关注的点是:

苹果在出刘海机型之前,内部肯定早就有了屏幕如何适配的解决方案,而其给出的方案就是:『SafeArea』,又称安全区域。对于 iOS 11+的系统,我们只需要拿到 UIViewController.view.safeAreaInsets,就能知道当前四周的边界值,然后,我们就能正确去约束我们的视图和控件。

上图通过 XIB 来更加直观的列举了两种屏幕在竖、横屏时的 SafeArea(安全区域),分别是:有刘海屏的(左一、二)和无刘海屏的(左三、四)XIB 。

如果你现在就动手去 coding,比如,尝试在 viewDidLoad 中去拿 SafeArea,实际上你拿出来的结果永远是 4 个 0;想要正确的获取 SafeArea 的值,我们需要先来理解一下 iOS 11 后,UIViewController 的生命周期方法及变动(大家先不看下一小节,也别百度谷歌,你能正确的说出来 UIViewController 的生命周期方式么?以及两个 VC 在 push pop 后,生命周期又会调用哪些方法么?)。

下图给出了正常的、完整的 UIViewController 生命周期方法流程图:

我们需要注意或了解的是:

图中已经给出了如何获取 SafeArea 的正确方法,下图将是举例如何设置一个 view 的两种方式:

源码如下:

(责任编辑:IT教学网)

更多

推荐linux文章