gpt4 book ai didi

swift - 调用全局类时无法解包可选

转载 作者:行者123 更新时间:2023-11-28 09:20:52 25 4
gpt4 key购买 nike

我的一个类(class)中有以下代码。

override func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {

parkCode = tableView.cellForRowAtIndexPath(indexPath).text

RTATab.codeText.text = parkCode.substringToIndex(3)
RTATab.codeLetter.text = parkCode.substringFromIndex(3)
self.dismissModalViewControllerAnimated(true)
}

上面引用的 RTATab 是我创建的另一个类(类型 UIViewController),在该类中我已将其声明为全局类,如下所示,因为我需要在其 View 中访问一些文本字段(codeTextcodeLetter)。

import UIKit
import messageUI
import CoreData
import QuartzCore

var RTATab : ViewController = ViewController()

class ViewController: UIViewController, MFMessageComposeViewControllerDelegate {
//some code
}

当我运行它时,我在 RTATab.codeText.text = parkCode.substringToIndex(3) 行收到一个can't unwrap optional.none 错误。

有人可以帮忙吗?我需要在 viewController 类中有一个初始化程序吗?

谢谢

最佳答案

您收到此错误,单元格文本为 nil。在调用 parkCode 上的方法之前,您必须首先检查它是否为 nil:

let possibleParkCode = tableView.cellForRowAtIndexPath(indexPath).text
if let parkCode = possibleParkCode {
RTATab.codeText.text = parkCode.substringToIndex(3)
RTATab.codeLetter.text = parkCode.substringFromIndex(3)
}

关于swift - 调用全局类时无法解包可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24712464/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com