首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >自动完成不工作的枚举-Swift 3

自动完成不工作的枚举-Swift 3
EN

Stack Overflow用户
提问于 2016-10-31 09:08:56
回答 1查看 368关注 0票数 1

我作了如下的发言:

代码语言:javascript
运行
复制
class Manager {

   enum Language {
        case englishLanguage

        static func english() -> Language {
            return englishLanguage
        }

    }
    static let sharedInstance = Manager()
    var language : Language?

    private init(){


    }

}

当然,我们可以这样称呼它:

代码语言:javascript
运行
复制
Manager.sharedInstance.language = .english() // or .englishLanguage

现在的问题是,当我编写= .时,它没有完成english,但是它在编写= .时与本机代码一起工作,它完成了,并表示中心,左,right..etc:

代码语言:javascript
运行
复制
Label.textAlignment = .left

如何才能使用我的枚举与本机相同的方式,并看到这些值。我做了一项很大的研究,互联网上没有这样的资源。有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-31 11:32:25

因为枚举变量language是可选的,所以它不会使用autocomplete.Generally自动完成。如果变量已使用enum值初始化,则为前缀。

因此,获得自动完成的结果使用!运算符

代码语言:javascript
运行
复制
 Manager.sharedInstance.language! = .englishLanguage

或赋值变量

代码语言:javascript
运行
复制
class Manager {
    enum Language {
        case englishLanguage
        case nepaliLanguage

        static func english() -> Language {
            return englishLanguage
        }

    }

    static let sharedInstance = Manager()
    var language : Language = .nepaliLanguage

    private init(){


    }

}

这样,您的自动完成工作很好。

代码语言:javascript
运行
复制
 Manager.sharedInstance.language = .englishLanguage
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40339193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档