首页 > 解决方案 > 结构的swift变量在switch语句中不可用

问题描述

我想在 2 个图像源之间切换。我有以下结构:

struct AppConstants {

static var imageSource:String = "goral"

static var fixURL = URL(string: "https://picsum.photos/375/375/?random")

struct Domains {

    static let baseurl = "http://www.m.myapp2go.de/services/"

}...

在我的 viewController 中的以下代码中,我无法访问 switch 语句中的 var“AppConstants.fixURL”:

 switch AppConstants.imageSource { // is filled with a value of a picker
    case "goral":
         let randomInt = Int.random(in: 1...12)
         let AppConstants.fixURL = URL(string: "http://www.m.myapp2go.de/pics/\(randomInt)_goral_item.jpg")

    case "picsum":
         let randomInt = Int.random(in: 1...1080)
         let AppConstants.fixURL = URL(string: "https://picsum.photos/375/375/?\(randomInt)")

    default:
        print("other")
    }

使用错误消息:

如果没有上下文类型和模式中缺少类型注释,则无法解析对成员“fixURL”的引用

标签: structswitch-statementswift4.2

解决方案


推荐阅读