首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何删除只有一个子项目的所有用户默认数据?

问如何删除只有一个子项目的所有用户默认数据?
EN

Stack Overflow用户
提问于 2019-02-07 04:49:37
回答 1查看 92关注 0票数 1

我的项目在主项目中有几个子项目。我只想删除一个子项目中的所有用户默认数据。我搜索并找到了用户默认值中的“套件”概念,但看起来该套件主要用于应用程序组。由于我不需要在应用程序组之间共享数据,所以我不知道“套件”是否是最好的方式。是否有其他好的方法来删除用户默认数据的一个子项目?

  • 在我的子项目中,有20~30个用户默认数据。所以,我认为逐个删除这些数据是不方便的。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-07 06:46:40

您可以使用枚举来声明您的子项目的密钥,并通过caseiterable协议对其进行验证,在for循环中您可以删除它们。我已经添加了下面的例子

代码语言:javascript
复制
var unqKey = "some unique ID" //EDIT

enum SubProjectKeys  : String,CaseIterable{

    case key1
    case key2
    case key3
    case key4

    var uniqueKey : String { //EDIT

            return  unqKey + self.rawValue
        }



}


func removeKeysForSubProject() {

    let userDefaultsObj = UserDefaults()
    for key in SubProjectKeys.allCases {

        userDefaultsObj.removeObject(forKey:  key.uniqueKey) //EDIT
        userDefaultsObj.synchronize()
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54566469

复制
相关文章

相似问题

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