如何用swift开发ios应用

如何用swift开发ios应用,第1张

打开所创建的「PersonalAccounts」应用。

在左侧项目结构树中,打开「Main.storyboard」文件

当打开「Main.storyboard」文件后,我们会在中间的主面板中看到一个带有「View Controller」字样的长的很像手机屏幕的“东西”。

这个东西就是我们“画”应用界面的主要“控件”。

默认的,我们可以在Xcode窗口的右下方找到所有Xcode现有的“控件”,它们在一个叫「Show the Object library」的窗口中。所有我们需要的,都可以从这个窗口中拖到主面板中的某个「Controller」上。

PS:以后我们称呼「Show the Object library」窗口为「对象仓库」。

在对象库中,我们可以看到有「XXXX Controller」还有「XXXX」两种控件。(Controller默认的以黄色的圆形唯底)

XXXX Controller,我们可以认为其是具有一定交互行为的页面控件。可以将在主面板中拖入的每一个Controller当成是将来要在APP中呈现的应用的页面。

PS:拖入「Navigation Controller」时较为特殊,其会自动生成一个“主页面”,此“主页面”是不能拖入其他控件的。其作用是「导航」其他页面。

制作Hello World

从「对象仓库」中,拖入一个名字为「Label」的控件对象到我们现有的也是唯一的视图控制器(View Controller)中。

PS:拖拽的过程中,可以体会一下对齐辅助线。

点击拖入的Label,可以在右方看到「控件属性栏」。在此栏中,我们可以看到当前选中控件的所有可用属性。

在「控件属性栏」中,编辑Label的「Text」属性为「Hello World!」。

PS:「Text」属性有两种模式,一种为「Plain」,另一种是「Attributed」。

通过切换这两种模式,我们可以发现「Plain」模式时,Label中文字的样式是不可编辑的。「Attributed」模式时,Label文字的模式是可以编辑的

运行

至此,第一个应用「Hello Wolrd」就完成了。我们可以在左上角处使用那个三角型来运行模拟器预览我们的应用。

在ios的OC和Swift混合开发无非是2种,一种是在OC的项目中使用Swift语言开发,这里就需要创建Swift文件(或者引用Swift写的的第三方库),另一种是在Swift项目中使用OC语言开发,这里就需要创建OC文件,(或者引用OC写的的第三方库)

首先我们在一个已有的OC的项目中,创建一个Swift文件

这里Xcode就会自动提示我们如:图1

Would you like to configure an Objective-C bridging header?

Adding this file to ocProjectUseSwift will create a mixed Swift and Objective-C target. Would you like Xcode to automatically configure a bridging header to enable classes to be accessed by both languages?

提示我们创建一个桥接的头文件,当我点击 “ Create  Bridging Header”,Xcode就给我们自动创建,自动创建的规则是:项目名+ "-Bridging-Header.h" 如图2

同时在项目中创建一个Swift文件

然后在在 targets ->Build Settings ->Packaging 中设置Defines Module 为YES

设置完后开始使用,怎么在oc中使用Swift的类呢?

重点: 在文件中引用 #import "ocProjectUseSwift-Swift.h"  记住不是我创建的SecondVC.swift,是“项目名-Swift.h"文件名 ,引入这个文件就引入了所有的Swift文件内的类、方法、属性

说明:这个文件是系统自动创建,自动添加所有我们创建的Swift的类的方法和属性

前提是要在方法和属性前面要加@objc 如图3:

用@objc声明好之后,在我们引用的是“项目名-Swift.h"文件名的 #import "ocProjectUseSwift-Swift.h" 内就看到有标记了如图4

这里分了3块,红色和绿色标记框内是我们自己标记的oc可用的属性和方法,蓝色框内是系统自己生成的oc可以初始化方法

具体使用就在oc文件中,如图5:

此事,在这个OC创建的项目中,我们创建的Swift文件怎么使用OC创建的类呢?

这里就用到我们创建的桥接头文件了,在图2中的桥接头文件,引入OC的头文件,如图6

就这样很简单,所以Swift文件的类都可以使用这个OC文件内的类了,使用起,和OC调用OC的类一样,如如图7和图8

Swift的项目中,第一次创建OC的文件,此时系统会自动帮我们创建桥接头文件,如图9

然后就有了和图2一样的桥接头文件,剩下的就和图6一样,在桥接头文件内引入头文件,即可使用OC的类,第三方库如果也是OC写的,在引入的时候也自动会加这个桥接头文件,当然一个项目只能加一次,加过的就不需要加了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12189692.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存