Tag: 学习代码

学习Swift:闭包

嗨,大家好! 我决定我也想发布一些我在编程时学到的概念。 对于那些不知道的人,我是一名软件工程师,目前专注于在Android中构建移动应用程序。 但是,我喜欢iOS,自2014年以来一直在Swift中制作应用。 这将简短明了,将来我可能会对此进行扩展。 什么是封包? 闭包是可以像变量一样传递的函数。 一种将闭包视为持有函数的类型的方法,即字符串,整数,双精度型。 了解功能也很重要。 函数是在Swift中使用func关键字定义的代码块。 函数可以采用并返回无,一个或多个参数。 为什么使用它们? 因为它们使用简单的语法,所以可以使代码更整洁并易于阅读。 它们还使您可以以一种不太复杂的方式灵活地重用代码。 通过降低复杂性,这也使您的代码更易于调试。 我该如何写闭包? 这是闭包的几种形式: var noParametersOrReturn:()->()= { 打印(“无参数或返回类型”) } var noParametersReturnString:()->字符串= { 返回“无参数,返回字符串” } 如果闭包是函数的最后一个参数,则尾随闭包允许您简化语法。 func sayHiAndRunClosure(name: String, closure: () -> ()) { print(“Hi, \(name)!”) closure() } sayHiAndRunClosure(name: “Mary”) { print(“The closure was ran!”) } 有一个更短的语法。 闭包参数可以按位置($ 0,$ 1,…)而不是名称进行引用。 设数字= [1,1,2,5] 让奇数=数字。过滤器{$ […]

建立自己的框架库

框架是导入常用方法以及共享代码和与其他开发人员协作的非常有用的方法! 什么是框架? 框架是模块的一种类型:构建在一起并一起交付的已编译代码集合。 假设您在许多项目中经常使用几种方法。 您可以将这些方法从一张纸复制并粘贴到另一张纸,但是在项目文件夹中进行挖掘以查找代码行可能会非常麻烦。 相反,您可以将最常用的方法编译到单个.swift文件中,然后像导入其他任何框架(如UIKit或Foundation)一样将其导入。 Xcode带有各种内置扩展名,例如.count和.sorted,但是在本示例中,我们将使用可在Array类型上使用的.shuffle()方法。 它会使用交换功能“随机”地对数组中的值进行混洗,并且可以应用于[Int],[String]和任何类型的数组! 确保将您的扩展名声明为“公共扩展名”,以便在被调用时可以轻松访问它! 现在我们已经保存了我们喜欢的方法的.swift文件,我们可以开始构建我们的框架了。 建立框架 在Xcode中,您可以像其他任何项目一样构建框架,但是这次不用选择“单视图应用程序”,而是向下滚动并选择“ Cocoa Touch Framework”。 现在,通过将源文件 (刚创建的.swift文件)拖动到项目中或单击Xco​​de左下角的+,将其添加到框架的文件夹中。 导航器现在看起来应与以下类似: 大! 一旦完成,就可以关闭框架并创建一个新的Xcode项目(或打开任何现有项目)。 使用与上述完全相同的方法,通过找到框架的.xcodeproject文件并将其拖动或添加到Xcode项目中,将框架添加到Xcode项目中。 同样,请确保其正确嵌套! 现在,您的框架已成为项目的一部分,但它们尚未真正沟通。 要解决此问题,请打开框架的“产品”文件夹。 接下来,单击导航栏中的顶部项目(您的项目名称),然后在相应的页面上向下滚动到Embedded Binaries。 在此处,单击框架的.framework并将其从Products文件夹拖到Embedded Binaries中。 下一部分有点深奥,但是我发现它使导入运行更加顺畅。 单击同一屏幕的“构建设置”,然后向下滚动,直到找到“搜索路径”。 在“框架搜索路径”和“标题搜索路径”下,添加$(SRCROOT)并使其递归。 设置完之后,就该构建了! CMD + B 好,很好! 那么,我们现在该怎么办……行得通吗? 让我们找出答案! 转到您的ViewController(或您将要处理的任何文件)。 在顶部,尝试仅通过输入“ import”和您的框架名称(理想情况下应自动显示)来导入框架。 还有……瞧! 现在,您在框架中拥有的任何扩展类型都应适用于项目中的该值。 但是,哦,不……您忘记添加方法了吗? 不要害怕! 您可以随时关闭项目并更新框架,新框架将在您的项目中显示为最新! 现在就这些了,我希望这个简单而简短的教程将有助于使您的所有编码生活变得更加懒惰,更轻松,更高效。

使用Xcode构建您的第一个应用程序

确保您的选项未选中,并且语言为Swift。 导航Xcode 我们将工作的四个主要部分是导航器,编辑器,调试区域和实用程序区域。 如您所见,我们的项目文件位于导航区域中。 我们应用程序的界面按钮将在Storyboard.swift进行设计。 文件和我们的Swift代码将保存在ViewController.swift 。 Xcode已经为我们提供了View Controller项目文件以开始使用。 现在,不必担心AppDelegate.swift或其他文件。 创建UI设计 尽管您可以通过编程方式对界面进行编码,但我认为在情节提要中进行工作是一种更直观,更有趣的方式来了解正在发生的事情。 因此,我们将在Xcode的故事板(用于存储用户界面)中使用情节提要。 仍在导航区域中的HelloWorldApp文件夹下,单击Storyboard.swift 。 添加对象元素 继续并单击对象库,如下图所示,或(Shift + Command + L)。 继续,在画布上添加一个“ 按钮 ”和一个“ 标签 ”。 从上面的对象库中放置并拖拽Button和Label对象。 使用右面板顶部的“ 显示属性”检查器图标,将按钮的文本,大小和字体更改为“显示问候”,添加背景色,并将标签重命名为“ Hello World”。 添加约束 我们需要添加约束,以使其在旋转设备或在不同屏幕尺寸上使用时保持在原位。 选择元素后,您将要单击下面的图标以添加约束。 将UI元素连接到代码 现在,我们已经完成了UI,现在让我们编写代码以建立与UI的连接。 要并排查看两个文件,请单击助手编辑器以在项目导航器中打开ViewController.swift文件。 现在,我们需要在“显示问候”按钮与View Controller.swift文件之间建立连接。 在Storyboard.swift文件中,单击“ Hello World!”标签。 在单击键盘上的CTRL按钮的同时,单击并将标签拖动到ViewController.swift文件。 确保标签是连接插座,并标记为“ helloWorld”。 使用“显示问候语”按钮执行相同的操作,除了确保将连接更改为“动作”。 它看起来像这样: 完成代码 测试该应用程序之前的最后一步是将以下代码放入您刚刚添加的toggleGreeting(_ sender: Any)方法中,该方法在未被使用时将隐藏“ Hello World!”问候: helloLabel.isHidden = […]