如何正确阅读Apple iOS文档?

Isa*_*jdi 16 documentation ios swift

我正在按照我在网上找到的教程,有这样的代码行:

var myImage = UIImage(named: "icon")
Run Code Online (Sandbox Code Playgroud)

我明白这行是做什么的,但我当然不想记住它,我想了解作者如何提出这段代码,所以我在文档中搜索UIImage类引用,在初始化器部分下面没有任何内容识别这段代码,为什么呢?我在哪里可以找到有关此代码的更多信息

我在网上看了很多教程,看了很多视频教程,看了很多书,所有这些都没有例外,他们给你看了代码,他们完全解释了,但他们没有告诉你他们是如何想出来的,他们是如何为正确的工作找到合适的方法的?

我应该花时间阅读Apple文档而不是所有这些教程吗?有什么我做错了吗?我错过了什么吗?我不想记住我读过的所有内容,这不是我想学习开发应用程序的原因,我想知道在哪里寻找合适的代码,我想学习像开发人员一样思考.

vac*_*ama 11

有3个有用的书面信息来源:

  1. 示例代码/教程:

    一旦您在Xcode/iOS中有一些编码经验,官方文档就很棒,但这是一个很难开始的地方.没有什么能比看好样本代码了.

    示例代码(来自Apple,来自Stack Overflow,来自Ray Wenderlich,您可以从任何地方找到它)是一种很好的学习方法.甚至编写您正在阅读的教程的人也开始使用其他人的示例代码.第一批学习iOS的人开始使用Apple的示例代码.

  2. 官方文档:

    要获取官方文档,option请单击UIImage代码或Playground.在弹出窗口中,选择UIImage Class Reference.您正在寻找的初始化程序是:

    + imageNamed:
    返回与指定文件名关联的图像对象.

    声明
    SWIFT
    init?(named name: String) -> UIImage

    OBJECTIVE-C
    + (UIImage *)imageNamed:(NSString *)name

    参数
    名称 文件的名称.如果这是第一次加载图像,则该方法在应用程序的主包中查找具有指定名称的图像.

    返回值指定文件的图像对象,如果方法找不到指定的图像,则为nil.

    当然,在Swift中,您不会通过调用直接调用初始化程序init.相反,UIImage在这种情况下,您使用类名. name是参数的内部名称,并?告诉您这是一个可能返回的可用初始值设定项nil,因此实际上这个初始化程序返回一个UIImage?.所以你应该看看init?(named name: String) -> UIImage并思考UIImage(named: String) -> UIImage?.

  3. 头文件:

    输入UIImage到你的代码或游乐场和Command-单击就可以了.这将显示头文件信息UIImage.列出的第一个初始化程序是:

    init?(named name: String) -> UIImage // load from main bundle
    
    Run Code Online (Sandbox Code Playgroud)

您可以从阅读标题中学到很多东西.我建议经常检查它们.


Dun*_*n C 5

棘手的一点是Swift处理初始化器的方式.我建议"购买"免费的"The Swift Programming Language"iBook并阅读关于初始化器的章节.

单词"init"出现在初始化程序的声明中,但在调用它时不使用单词init.

声明是

init?(named name: String) -> UIImage
Run Code Online (Sandbox Code Playgroud)

问号告诉你它是一个"可用的"初始化器.

不要使用单词init调用它,而是将类名称设置为方法名称,以及以下参数:

UIImage(named: "name")
Run Code Online (Sandbox Code Playgroud)

对于init方法来说,它变得更加复杂initWithFrame:.在这种情况下,它解析"with",并创建一个参数"frame".

我不打算在这里介绍一切.(我自己也在学习细微差别.)就像我说的那样,阅读Swift iBook中有关初始化器的章节.